马士兵 J2SE基础 概念总结Word文档下载推荐.docx
- 文档编号:15368282
- 上传时间:2022-10-29
- 格式:DOCX
- 页数:30
- 大小:2.13MB
马士兵 J2SE基础 概念总结Word文档下载推荐.docx
《马士兵 J2SE基础 概念总结Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《马士兵 J2SE基础 概念总结Word文档下载推荐.docx(30页珍藏版)》请在冰豆网上搜索。
转换:
1.当需要把String转换为基础数据类型时,使用对应的基础数据类型的包装类里面的方法。
列:
inta=Integer.parseInt(s);
2.将基本类型数据转换为String:
inta=2;
Stringm=String.valueOf(a);
3.String转char:
Strings=“Xforce”
chara=s.charAt
(1);
(3_面向对象编程)
重点:
1.代码内存分析:
06_内存解析_1,07_内存解析_2,08_内存解析_3,14_TestCircle程序分析_1,15_TestCircle程序分析_2,15_TestCircle程序分析_2.
2.动态绑定和多态
39_多态_1.avi40_多态_2.avi内存分析见39_多态_1.aviTestPolymoph\Test.java
父类引用指向子类对象解释:
37_对象转型_1.avi
3.抽象类、抽象方法
4.接口
一、对象和类的概念
1.类是同种对象的集合与抽象,类中定义了这一类对象所应具有的静态和动态属性。
二、面向对象设计思想和步骤:
(1)分析问题中有哪些类那些对象
(2)分析这些对象中应该具有的属性和方法
(3)分析类与类之间的关系
三、Java类的定义
四、局部变和成员变量
局部变量:
方法或语句块内部(方法的参数叫局部变量)(小)(必须赋初试值才可以使用)
成员变量:
方法外部、类的内部(大),不用初始化,java系统会给你赋初始值
五、引用类型(C中的指针,占两块内存)
六、构造函数
构造函数是定义在java类中的一个用来初始化对象的函数
1.构造函数名字与类的名字相同,大小写也保持一致
2.使用new+构造方法创建一个新的对象
3.构造函数与类同名切没有返回值。
即便是void也不能写
4.注意:
当无指定构造函数时,编译器为类自动添加形为:
类名(){}的构造方法
5.例子:
publicclassPerson{
intid;
intage=20;
Person(int_id,int_age){
Id=_id
Age=_age;
}
七、方法重载OverLoad,方法重写OverWrite,方法覆盖Override
overload完全新的方法,参数和原方法不同。
override覆盖继承到的那个方法,原方法没有放弃。
overwrite重写继承到的那个方法的代码,原方法被放弃。
其中Eclpise中没有overwrite的说法,也即override和overwrite是同一个概念。
马士兵教程:
方法覆盖Override也叫方法重写OverWrite。
方法重载OverLoad:
方法的重载指一个类中可以定义有相同的名字,但参数个数不同和参数类型不同的多个方法。
调用时会根据不同的参数表选择对应方法.能被编译器区分的方法既是构成重载。
构造函数(方法)也可以重载.
Person(){id=0;
age=20;
Person(int_id){id=_id;
age=23;
方法覆盖Override(方法重写OverWrite):
在子类中根据需要对基类中继承来的方法进行重写.
注意:
1.重写方法必须和被重写方法具有相同方法名称、参数列表和返回值.
2.重写方法不能使用比被重写方法更严格的访问权限.
3.子类覆盖父类的方法时,只能比父类抛出更少的异常,或者是抛出父类抛出的异常的子异常,因为子类可以解决父类的一些问题,不能比父类有更多的问题.
4.如果父类的方法是private类型,那么,子类则不存在覆盖的限制,相当于子类中增加了一个全新的方法.
八、this关键字
定义:
在类的方法定义中使用this关键字代表使用该方法的对象引用
使用this(argument_list)调用本类的另外的构造方法
使用this.xxx=xxx获取本类另外一个构造方法传来的值
this可以看做一变量,它的值是当前对象引用
九、Static关键字
1.在类中,使用static声明的成员变量为静态成员变量,它为该类的公用变量,在第一次使用时被初始化,对该类的所有对象来说,static成员变量只有一份。
2.用static声明的方法为静态方法,在调用该方法时,不会将对象的引用传递给它,所以在static方法中不可访问非static的成员。
-----静态方法不再是针对某个对象调用,所以不能访问非静态成员
3.可以通过对象引用或者类名(不需实例化)访问静态成员。
4.静态变量可以用来计数。
(main方法可以直接调用)
一十、控制访问publicprotectedprivatedefault
1.可修饰class和成员变量(成员方法)
2.Class:
public和default
3.default包权限
4.private私有类子类拥有私有变量的所有权,无使用权(只能看不能动)
一十一、类的继承与权限控制
Java中使用extends关键字实现类的继承机制。
语法为:
<
modifier>
class<
name>
[extends<
superclass>
]{……}
通过继承,子类自动拥有了基类(父类)(superclass)的所有成员(成员变量和方法)
java只支持单继承,不允许多继承:
一个子类只能有一个基类一个基类可以派生出多个类
一十二、super关键字
用super来引用当前基类(父类)的成分就是说子类继承父类时,父类的某个方法虽然完成的不是很好但是也完成了部分功能不必重写,就用super.f()调用父类的相应方法,再接着写你想实现的功能
一十三、继承中的构造方法
1.子类的构造过程中必须调用基类的构造方法。
2.子类可在自己的构造方法中使用super(argument_list参数列表)调用基类的构造方法。
------如果调用super.必须写在子类构造方法第一行
------使用this(argument_list)调用本类另外的构造方法
补充:
可以先用super()调基类,再用this()调子类,super()必须写在子类的构造过程前面!
---------
3.如果子类构造方法中没有显示的调用基类构造方法则系统默认调用基类无参数的构造方法。
4.如果子类构造方法既没有显示地调用基类构造方法,而基类中有没有无参数的构造方法,则编译出错。
5.文件编译的时候,子类的所有方法都要执行一遍,即有参SubClass(intn){}和无参的SubClass(){}都要执行。
6.更多:
Java继承应用之小结
一十四、Object类之toString方法
1.Object类中定义有publicStringtoString()方法,起返回值是String类,描述当前对象的有关信息
2.在进行String与其他类型数据的连接操作时(如:
System.out.println(“info”+person)),将自动调用该对象类的toString()方法
3.可以根据需要在用户自定义类型中重写toString()方法TestToString.java
一十五、Object类之equals方法
1.比较一个类两个对象的内容是否相等
2.Object的equals方法定义为:
x.equals(y)当x和y是同一个对象的引用时返回true否则返回false
一十六、对象转型
ainstanceofCat判断a对象是不是Cat类型
一十七、动态绑定和多态
1.在执行期间(非编译期)判断所引用对象实际类型,根据其实的类型调用其相应的方法
2.多态存在的条件:
有继承,有重写,父类引用指向子类对象。
一旦满足,当父类里被重写的方法时,实际new的哪个子类对象,就调用子类对象方法。
见笔记手册
总结:
多态=继承+重写+父类引用指向子类的对象.
3.父类引用指向子类对象
要理解多态性,首先要知道什么是“向上转型”。
我定义了一个子类Cat,它继承了Animal类,那么后者就是前者是父类。
我可以通过Catc=newCat();
实例化一个Cat的对象,这个不难理解。
但当我这样定义时:
Animala=newCat();
这代表什么意思呢?
很简单,它表示我定义了一个Animal类型的引用,指向新建的Cat类型的对象。
由于Cat是继承自它的父类Animal,所以Animal类型的引用是可以指向Cat类型的对象的。
那么这样做有什么意义呢?
因为子类是对父类的一个改进和扩充,所以一般子类在功能上较父类更强大,属性较父类更独特,定义一个父类类型的引用指向一个子类的对象既可以使用子类强大的功能,又可以抽取父类的共性。
所以,父类类型的引用可以调用父类中定义的所有属性和方法,而对于子类中定义而父类中没有的方法,它是无可奈何的;
同时,父类中的一个方法只有在在父类中定义而在子类中没有重写的情况下,才可以被父类类型的引用调用;
对于父类中定义的方法,如果子类中重写了该方法,那么父类类型的引用将会调用子类中的这个方法,这就是动态连接。
一十八、抽象类、抽象方法
1.用abstract来修饰的类/方法
2.规则:
1)含有抽象方法的类必须被声明为抽象类,抽象类必须被继承,抽象方法必须重写
2)抽象类不能被实例化
3)抽象方法只需声明而不需实现
抽象类声明的语法形式为abstractclassNumber{...}
抽象方法声明的语法形式为publicabstract<
returnType>
<
methodName>
(...);
一十九、Final关键字
1.final的变量的值不能够被改变
a)final的成员变量
b)final的局部变量(形参)
2.final的方法不能够被重写
3.final的类不能够被继承
如:
publicfinalclassString类
publicfinalvoidm()方法
finalintI=9成员/局部变量
二十、接口/interface
1.接口是抽象方法和常量值的定义的集合
2.从本质上讲,接口是一种特殊的抽象类,这种抽象类中只包含常量和方法的定义,而没有变量和方法的实现。
3.接口定义举例:
publicinte
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 马士兵 J2SE基础 概念总结 士兵 J2SE 基础 概念 总结