一、初始Java
1、一个Java源文件中最多只能有一个public的类【但,可以有多个class的声明】,当有一个public的类时,源文件名必须与此类名一致,否则,无法编译;如果源文件中没有一个public类,则文件名和类名没有一致性要求。
二、Java语法基础
1、基本数据类型:
a)byte---1字节,short--2,int--4,long---8【常量后面记得加上L或者l】,char--2字节,float--4,double--8,。
2、数组
a)数组声明方式:两种:【不分配内存空间】
数据类型 数组名[ ]数据类型[ ] 数组名
b)Java不允许在声明数组中的方括号内指定数组元素的个数,与c/c++不同。
c)创建一维数组:【创建数组时,才真正分配内存空间,所以需要指明元素的个数】
数组名 = new
数据元素类型 [元素个数]
d)初始化一维数组:【求数组长度 int len =
array.length;】【不是方法没有括号()】
int array[ ]
= new
int [ ] {1,2,3,4};
或者int array[ ]
= {1,2,3,4}
3、break和continue区别
a)break作用:跳出当前循环体或者程序体;
b)continue的作用:只能用在循环语句内部,功能:跳过该次循环,继续执行下一次循环。
4、Java处理大数据
a)Java中存在两个类BigInteger和BigDecimal,分别表示大整数类型和大浮点数类,这两个类可以处理任意长度的数字序列;
b)声明:
BigInteger bi1
= new
BigInteger();BigInteger bi2
= new
BigInteger();c)BigInteger和BigDecimal两个类没有重载“+”、“-”、“*”、“/”运算符;其有自己提供的方法。
加:bi1.add(bi2)
减:bi1.subtract(bi2)
乘:bi1.multiply(bi2)
除:bi1.divide(bi2)
取反:bi1.negate()
指数运算:bi1.pow(数字)
三、类与对象
1、创建对象:创建对象的过程叫做类的实例化。使用new来创建对象
2、构造函数:
a)在类实例化的过程中自动执行的方法叫做构造方法。不需要手动调用
b)构造方法的名称必须和类名相同,并且没有返回值
3、this关键字:
用来表示当前对象本身,或者当前类的一个实例,通过this关键字可以调用本对象的所有方法和属性。
4、包装类、自动拆箱和装箱
即int---》对应的Integer等。
5、封装:即将属性私有化;提供共有的方法,访问私有变量
声明private的属性,对其定义getXxx()和setXxx()方法,进行访问
6、单例模式:
a)单例模式,确保某一个类只有一个实例,并且自行实例化并向整个系统提供这个实例,此类成为单例类。【选择单例类主要为了,避免不一致状态】
b)单例类满足的特点:
单例类只能有一个实例;
单例类必须自己创建自己的唯一实例;
单例类必须给其他对象提供这一实例。
四、继承和多态
1、Java中的类只支持单继承,多继承是通过接口间接实现的;
2、使用super调用父类的构造方法
a)子类不继承父类的构造方法。在创建子类对象时,会先调用父类的构造器,初始化继承父类的成员,然后调用子类构造器初始化子类的成员。
b)子类如果想使用父类的构造方法,必须在子类的构造方法中使用,并且使用关键字super来表示,而且super必须为子类构造方法中的第一个语句。
c)
3、抽象类
a)抽象类不能实例化【实例化交给子类来完成】,可以被继承
b)抽象方法必须由子类进行重写。
c)只要包含一个抽象方法的类,就必须定义为抽象类
d)抽象类可以包含具体的方法,当然也可以不包含抽象方法
4、多态:---一个接口,多种实现,就是同一事物,表现出的多种形态。
a)实现多态的两种方法:继承和接口
b)
5、