一、数据类型

1、基本数据类型

整型:byte(8 bit)、short、int(默认类型)、long

浮点型:float、double(默认类型)

字符型:char(' ')

布尔类型:boolean(true  or  false)

2、引用数据类型(数组、类、接口)

除了基本类型(primitive type)和枚举类型(enumeration type),剩下的都是引用类型(reference type).

二、变量的运算

1、自动类型变化:容量小的数据类型自动转换为容量大的数据类型,byte、short、char之间做运算,结果为int型。

2、强制类型转换:是(1)的逆过程,使用"()"实现。

三、成员变量VS局部变量

相同点:

1、遵循变量声明的格式:数据类型   变量名=初始化值。

2、都有作用域。

不同点:

1、声明的位置不同:成员变量声明在类里、方法外,局部变量声明在方法里、方法的形参部分代码块里。

2、成员变量的修饰符:public、private、protected、缺省,局部变量没有修饰符,与所在方法修饰符相同

3、初始化值:成员变量,如果在声明的时候没有显式的赋值,不同的数据类型默认不同的初始值,局部变量必须显式的赋值。

4、二者在内存中存放的位置也不同:成员变量存与堆空间中,局部变量存与栈空间中。

关于变量的分类:1、按照数据类型不同          基本&引用

                             2、按照声明位置不同          成员&局部

四、类的初始化内存划分的结构

1、栈(stack):局部变量、对象的引用名、数组的引用名。

2、堆(heap):new出来的(对象实体,数组实体)

3、方法区:含字符串常量

4、静态域:声明为static的变量

五、四种权限修饰符

1、权限大到小为:public、protected、缺省、private。

2、四种权限修饰符都可用来修饰属性、方法、构造器。

3、修饰类的话:public、缺省(default)。

修饰符 当前类内部 同 一个包 子 类 其他包
private      
缺省(default)    
protected  
public

六、方法的重载与重写的区别?

重载:"两同一不同":同一个类,同一个方法名,不同的参数列表。注意:方法的重载与方法的返回值无关,构造器可重载。

重写:前提:在继承的基础上,子类在获取1了父类的结构之后,可以对父类中同名的方法进行"重构",方法的返回值、方法名、形参列表相同;权限修饰符不小于父类的同名方法;子类方法的异常类型不大于父类;两个方法要同为static或同为非static。

七、'=='    VS    equals

'=='

1、基本数据类型:根据基本数据类型的值判断是否相等,相等返回true,否则返回false。注:两端数据类型可以不同,在不同的情况下,也可以返回true。

2、引用数据类型:比较引用类型变量的地址是否相等。

'equals'

1、只能处理引用类型的变量

2、在Object类,发现equals()任然比较的两个引用变量的地址值是否相等。

  • 像String、包装类、File类、Date类这些重写Object类的equals方法,比较是两个对象的"实体内容"是否完全相同。
  • 若我们自定义一个类,希望比较两个对象的属性值都相同的情况下返回true的话,就需要重写Object类的equals方法。

八、关键字this与super的区别 

 

Java基础笔记(1)

注意:this与super在构造器里面是不可以同时存在的。

九、基本数据类型、包装类、String类之间的转换

基本数据类型——>包装类

装箱:1、通过构造器:Integer  t = new Integer(11);

           2、通过字符串参数:Float f = new Float("32.1F");

           3、自动装箱。

包装类——>基本数据类型

拆箱:1、调用包装类的方法

           2、自动拆箱

基本数据类型——>String类

1、String类的valueOf()方法

2、23.4 + "  "

String类——>基本数据类型

1、调用相应的包装类的parseXxx(String)静态方法

2、通过包装类构造器:boolean b = new Boolean("true");

String类——>包装类

Float f = new Float("31.2F");

包装类——>String类

1、包装类对象的toString()方法

2、调用包装类的toString(形参)。

十、代码块:类的第四类成员

作用:用来初始化的属性

分类:只能用static修饰

静态代码块:

1、里面可有输出语句

2、随着类的加载而加载,而且只被加载一次

3、多个静态代码块之间按照顺序结构执行

4、静态代码块的执行要早于非静态代码块的执行

5、静态代码块中只能执行静态的结构(类属性、类方法)

非静态代码块

1、可以对类的属性(静态的&非静态的)进行初始化操作,同时也可以调用本类声明的方法(静态的&非静态的)

2、里面可以有输出语句

3、一个类中可以有多个非静态代码块,多个代码块之间按顺序结构执行

4、每创建一个类的对象,非静态代码块加载一次

5、非静态代码块的执行早于构造器

 

 

 

相关文章: