Java基础语法

目录

计算机基础

1、常用的Dos命令

2、Java特性和优势(了解)

3、Java三大版本

4、JDK、JRE、JVM

5、Java中的注释有三种:

变量和运算符

1、标识符

2、数据类型

3、类型转换

4、定义变量

JavaDoc

For循环

分隔符

运算符

可变参数

数组(array)

冒泡排序

面向对象

Scanner对象

一、面向对象之封装

1、方法

2、权限修饰符

3、get/set

4、this关键字

5、扩展

二、面向对象之继承

1、方法重写

2、super关键字

三、面向对象之多态

方法的重载


计算机基础

1、常用的Dos命令

#查看当前目录下的所有文件 dir #切换目录 cd chamge directory cd .. #清理屏幕 cls (clear screen) #退出终端 exit #查看电脑ip ipconfig

#打开应用 calc mspaint notepad

 #ping 命令
     ping www.baidu.com

#文件操作 md (创建)目录名 rd (移除)目录名 cd> (创建)文件名 del (删除)文件名

#清屏 cls 清屏

2、Java特性和优势(了解)

简单性 ​ 面向对象 ​ 可移植性 ​ 高性能 ​ 分布式 ​ 动态性 ​ 多线程 ​ 安全性 ​ 健壮性

3、Java三大版本

JavaSE:标准版(桌面程序,控制台开发......) ​ JavaME:嵌入式开发(手机,小家电......) ​ JavaEE:E企业级开发(web端,服务器开发...)

4、JDK、JRE、JVM

JDK(java开发时工具) ​ JRE(Java运行时环境) ​ JVM(Java虚拟机) ​ JDK>JRE>JVM

卸载JDK 1、删除Java的安装目录 2、删除JAVA_HOME 3、删除parh下关于Javad的目录 安装JDK 1、百度搜索JDK8,找到下载地址 2、同意协议 3、下载电脑对应的版本 4、双击安装JDK 5、**记住安装的路径** 6、配置环境变量 1、我的电脑-->右键-->属性 2、环境变量-->JAVA_HOME 3、配置path变量 7、测试JDK是否安装成功 1、打开cmd 2、java -version

HelloWord 1、随便新建一个文件夹,存放代码 2、新建一个Java文件 ·文件后缀名为.java ·Hello.java ·【注意点】系统可能没有显示文件后缀名,我们需要手动打开 3、编写代码 4、编译javac java文件,会生成一个class文件 5、运行calss文件,java class文件

可能会遇到的情况 1、每个单词的大小不能出现问题,Java是大小写敏感的 2、尽量使用英文 3、文件名和类名必须保证一致,并且首字母大写 4、符号使用的了中文

 main(方法)

 Java程序运行机制
     1、编译型-->操作系统
     2、解释型-->网页、python

 psvm(生成一个main方法)
 sout输出

5、Java中的注释有三种:

单行注释 ​ 多行注释 /* 注释 */ ​ 文档注释 //JavaDOC:文档注释 /** */

BAT:百度,阿里,腾讯

 //有趣的代码注释

变量和运算符

1、标识符

 关键字
     abstract    assert      boolean     break       byte
     case        catch       char        class       const
     continue    default     do          double      else
     enum        extends     final       finally     float
     for         goto        if          implements  import
     instanceof  int         interface   long        native
     new         package     private     protecte    public
     return      strictfp    short       static      super
     switch      synchronized    this    throw       throws
     transient   try         void        volatile    while
 Java所有的组成部分都需要名字。类名。变量名以及方法名都称为标识符。
 ​
 标识符注意点
     ·所有的标识符都应该以字母(A-Z或者a-z),美元符($)、或者下划线(_)开始
     ·首字符之后可以是字母(A-Z或者a-Z),美元符()、下划线(_)或数字的任何字符组合
     ·不能使用关键字作为变量名或方法名。
 ~    ·标识符是大小写敏感的
     ·合法标识符举例: age、$salary._value、__1_value
     ·非法标识符举例:123abc、-salary、#abc
         public static void main(String[] args) {  
         String王者荣耀="最强王者";
         system.out.println(王者荣耀);
     ·可以使用中文命名,但是一般不建议这样去使用,也不建议使用拼音,很Low

#intellij idea运行程序或项目时出现中文乱码

2、数据类型

~ 强类型语言 要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用 弱类型语言

 Java的数据类型分为两大类
     基本类型(primitive type)
     引用类型(reference type)

//八大基本数据类型

     //整数
     int num1 = 10;  //最常用
     byte num2 = 20;
     short num3 = 30;
     long num4 = 30L;    //Long类型要在数字后面加个L
 ​
     //小数:浮点数
     float num5 = 50.1F; //Lfloat类型要在数字后面加个F 
     double num6 = 3.1415926358979328462643;
 ​
     //字符
     char name = '国';
     //字符串,String不是关键字,类
     String namea = "秦疆";
 ​
     //布尔值:是非
     boolean flag = true;
     //boolean flag = false;

3、类型转换

由于Java是强类型语言,所以要进行有些运算的时候时,需要用到强类型转换。
    低----------------------------------高
    byte,short,char->int->long->float->double

~ 运算中,不同类型的数据先转化为同一类型,然后进行运算。

money 钱 years 年份 total 总数

4、定义变量

Java是一种强类型语言,每个变量都必须声明其类型。 ​ Java变量是程序中最基本的存储单位,其要素包括变量名,变量类型和作用域。 ~ 每个变量都有类型,类型可以是基本类型,也可以是引用类型。 ~ 变量名必须是合法的标识符。 ~ 变量声明是一条完整的语句,因此每一个声明都必须以分号结束。

salary 工资 final 常量

变量的命名规范 所有变量、方法、类名:见名知意 类成员变量:首字母小写和驼峰原则:monthSalary 除了第一个单词以外,后面的单词首字母大写 局部变量:首字母小写和驼峰原则 常亮:大写字母和下划线:MAX_VALUE 类名:首字母大写和驼峰原则:Man,GoodMan 方法名:首字母小写和驼峰原则:run(),runRun()

operator 运算符 cast 转换

~字符串连接符 + ,String int a = 10; int b = 20; System.out.println(""+a+b); System.out.println(a+b+""); /* 结果为 1020 30 */

score 成绩

JavaDoc

javadoc命令是用来生成自己API文档的 ​ 参数信息 ​ @author作者名 ​ @veersion版本号 ​ @since指明需要最早使用的jdk版本 ​ @param参数名 ​ @return返回值情况 ​ @throws异常抛出情况

javajdk版本

//通过命令行    javadoc 参数 Java文件

For循环

for循环语句是支持迭代的一种通用结构,是最有效、最灵活的循环结构。
 /*
 关于for循环有以下点说明:
    最先执行初始化步骤。可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是 空语句。
    然后,检测布尔表达式的值。如果为true,循环体被执行。如果为false,循环终止,开始执行循环体后面的语句。
    执行一次循坏后,更新循环控制变量(迭代因子控制循环变量的增减)。
    再次检测布尔表达式。循环执行上面的过程。
 */
 
 //死循环
 for (; ; ){

 }

odd 奇数 even 偶数

println 输出完会换行 print 输出完不会换行

label 标签 outer 外层

分隔符

空白符(White Space)包括空格(SP,space) 、制表符(‘\t’,Tab键)、走纸换页( ‘\f’)、回车(‘\r’)和换行(‘\n’)。回车和换行顺序连在一起也称为行结束符。Java语言中单个空白符与多个空白符的作用是一样的。

运算符

&双目,1100
       0101
^异或   1001
<<左移 1100->11000
>>带符号右移-7,10000111,
原码,反码:正数的原码、反码和补码相同!!
           负数的原码、反码和补码不相同!!

可变参数

1.在方法声明中,在指定参数类型后加一个省略号(...)。
2.一个方法只能指定一个可变参数,它必须是方法的最后一个参数。任何普通的参数必须在它之前声明。

数组(array)

数组的四大基本特点: 1.其长度是确定的。数组一旦被创建,它的大小就是不可以改变的。 2.其元素必须是相同的类型,不允许出现混合类型。 3.数组中的元素可以是任何数据类型,包括基本类型和引用类型。 4.数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量。 数组本身就是对象,Java中对象是在堆中的,因此数组无论保存原始类还是其他对象类型,

数组对象本身是在堆中的。

数组边界 ArraylndexOutOfBoundsException:数组下标越界异常!

reverse 反转

冒泡排序

  1. 冒泡排序无疑是最为出名的排序算法之一,总共有八大排序!

  2. 冒泡的代码还是相当简单的,两层循环,外层冒泡轮数,里层依次比较,江湖中人人皆知。

  3. 我们看到嵌套循环,应该立马就可以得出这个算法的时间法咋读为O(n2)。

面向对象

OO 面向对象 OOP 面向对象编程 面向对象编程的本质就是:以类的方式组织代码,以对象的组织(封装)数据。 三大特点: 1. 封装 2. 继承 3. 多态

Scanner对象

基本语法:
    Scanner s = new Scanner(System.in);
通过Scanner类的next()与nextLine()方式获取输入的字符串,在读取前我们一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据。
next():
    next()不能得到带有空格的字符串。
nextLine():
    以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前是所有字符。

struct 结构

一、面向对象之封装

1、方法

System.out.printin() //类.对象,方法 Java方法是语句的集合,它们在一起执行一个功能。 1.方法是解决一类问题的步骤的有序组合 2.方法包含于类或对象中 3.方法在程序中被创建,在其他地方被引用

public 公共的 result 结果

方法调用 调用方法:对象方法:对象名.方法名(实参列表)

拓展了解:值传递(Java)和引用传递

2、权限修饰符

  • 我们除了可以按照自己的想法,封装世界的完事万物,封装还给我们提供了更加丰富的内容。

  • 我们可以按照我们的需求,对封装在对象内的属性和方法提供不同的权限,刻意暴露或隐藏的具体的实现的细节。

这个就要依靠权限修饰符来完成了,其实我们尸经见讨很多次了:

作用域 当前类 同package 子孙类 其他package
public
protected
friendly(default)
private

包机制

~ 包的本质就是文件夹 一般利用公司域名倒置作为包名;com.kuangstudy.blog

//导入这个包下所有的类
import com.kuang.base.*;

阿里巴巴开发手册

3、get/set

记住这句话就够了:属性私有,get/set

private 私有的

4、this关键字

this当做构造器只能放在第一行

5、扩展

extends 扩展 子类是父类的扩展 JAVA中类中有单继承,没有多继承! object类

二、面向对象之继承

1、方法重写

Override 重写

2、super关键字

super注意点: 1. super调用父类的构造方法,必须在构造方法的第一个 2. super 必须只能出现在子类的方法或者构造方法中! 3. super和 this 不能同时调用构造方法!

Vs this: 代表的对象不同: this: 本身调用者这个对象 super: 代表父类对象的应用 前提 this: 没有继承也可以使用 super: 只能在继承条件才可以使用 构造方法 this(): 本类的构造 super: 父类的构造!

#重写:需要有继承关系,子类重写父类的方法!

1. 方法名必须相同
    2. 参数列表列表必须相同
    3. 修饰符:范围可以扩大但不能缩小:    public>Protected>Default>private
    4. 抛出的异常:范围,可以被缩小,但不能扩大:    ClassNotFoundException --> Exception(大)

重写,子类的方法和父类必要一致:方法体不同!

为什么需要重写: 1. 父类的功能,子类不一定需要,或者不一定满足! Alt + Insert : override;

三、面向对象之多态

  1. 即同一种方法可以根据发送对象的不同而采取多种不同的行为方式。

  2. 一个对象的实际类型是确定的,但可以指向对象的引用的类型有很多。

多态注意事项:

  1. 多态是方法的多态,属性没有多态

  2. 父类和子类,有联系 类型转换异常! ClassCastException!

  3. 存在条件:继承关系,方法需要重写,父类引用指向子类对象! Father f1 = new Son();

    1. static 方法,属于类,它不属于实例

    2. final 常量;

    3. private 方法;

instanceof (类型转换) 引用类型,判断一个对象是什么类型

  1. 父类引用指向子类对象

  2. 把子类转换为父类,向上转型;

  3. 把父类转换为子类,向下转型;强制转换

  4. 方便方法的调用,减少重复的代码!简介

封装、继承、多态! 抽象类,接口

public 公共设施 大家都可以使用,protected 同族的可以使用,friendly 亲兄弟可以使用,private自己使用

方法的重载

方法的重载的规则: 1.方法名称必须相同。 2.参数列表必须不同(个数不同、或类型不同、参数排列顺序不同等)。 3.方法的返回类型可以相同也可以不相同。 4.仅仅返回类型不同不足以成为方法的重载。

你可能感兴趣的:(jvm,java,开发语言)