这些都是我上课认真听讲的结晶,里面提到了许多用Java做开发的许多小技巧 同时还有一些oracle数据库的东东。
1、第一章
为什么类名可以直接访问类的属性和方法?
答:可以被类名访问的都是静态方法,而静态方法是在程序一运行,JAVA虚拟机就会在内存中为其开辟了空间并进行了初始化
所以,我们可以直接使用类名来调用属性和方法。普通的实例方法则是在创建对象的时候被初始化,所以只能通过对象名进行访问
先有对象后有类
在类中用static修饰的方法和变量称为类属性,方法
不适用static修饰的属性和方法,属于单个对象,通常称为为实例属性(实例变量),实例方法
构造函数:与类同名且无返回值,作用是初始化成员
2、第二章
一个JAVA程序中在编译的时候,有多少个class 在编译的时候就会产生多少个.class文件
注意:JAVA中的类名第一个字母大写,方法第一个字母小写,如果方法名由多个单词组成 从第二个单词开始 首字母都要大写
初始化子类对象的时候,会默认优先调用父类的构造函数
使用关键字 super 可以在子类中访问父类的成员 (无法访问private修饰的成员)
super代表对当前对象的直接父类对象的默认引用
如果我们不显示使用super关键字调用父类的有参构造函数,JVM将会自动调用父类的无参构造函数进行对父类成员的初始化
如果一个类存在多重继承关系,既:A类继承B类,B类继承C类,C类继承自D类
如果子类中存在与父类同名的方法,只会调用子类的同名方法
抽象类:如果父类是一个抽象类 且包含抽象方法,那么子类必须实现抽象方法
严重注意:子类实现父类的抽象方法,方法签名必须与父类对应抽象方法相同
用final关键字修饰的类不能被继承,用final修饰的方法不能被重写,用final修饰的变量tb值无法改变
abstract关键字的作用与final相反
用final修饰一个对象,对象的属性是可以改变的,但对象引用指向另一个堆空间
abstract不能和private同时修饰一个方法
abstract不能和static同时修饰一个方法
abstract不能和final同时修饰一个方法或类
注意:abstract不能用来修饰属性和构造方法
MIS:经营管理系统
OA:办公自动化系统
ERP:企业资源管理系统
CRM:客户关系管理系统
为什么抽象类不能被实例化?
答:因为抽象类
注意:如果父类是抽象类,子类必须实现抽象类中的所有抽象方法。除非子类也是一个抽象类,就可以不实现父类中的抽象方法