
二。
1。Peoplejava
public class People {
//性别(sex)及出生日期(date);方法成员有:获取人的性别和出生日期及构造方法。要求构造方法可以设置性别和出生日期的初始值。
private int sex;
private Date birth;
public People (int sex, Date birth) {
thissex = sex;
thisbirth = birth;
}
public int getSex() {
return thissex;
}
public Date getBirth() {
return thisbirth;
}
}
2。Studentjava
public class Student extends People{
private int sex;
private Date birth;
private String name;
private int stuno;
private double grate;
private String studentNative;
public Student(int sex, Date birth, String name, int stuno, double grate, String studentNative) {
super(sex, birth);
thisname = name;
thisstuno = stuno;
thisgrate = grate;
thisstudentNative = studentNative;
}
public Date getBirth() {
return birth;
}
public double getGrate() {
return grate;
}
public String getName() {
return name;
}
public int getSex() {
return sex;
}
public String getStudentNative() {
return studentNative;
}
public int getStuno() {
return stuno;
}
}
3。测试类自己编写就好了,创建一个People和Student的对象,然后设置值,取值就可以了。
五。
1构造方法没有返回值,方法名和类名一样
2继承是指子类可以拥有父类的方法和属性;多态是指父类的引用可以指向子类对象的实例
3重写
4重载
其他的没什么了,自己完成以下吧。O(∩_∩)O~
类和对象static关键字修饰的方法/变量属于该类,没有用static修饰的,属于该类的实例即对象。
类和对象
static关键字修饰的方法/变量属于该类,没有用static修饰的,属于该类的实例即对象。
类方法/变量由类调用,成员方法/变量由实例调用。
this 总是指向调用该方法的对象(不是类)。
方法详解
方法所属性(static决定)
形参,实参的传递(值传递,注意引用变量传递的区别)
形参个数可变(放在形参类型后)
方法的重载(返回值不同或者形参个数不同)
递归方法
成员变量和局部变量
package程序第一行,只能一个
import导入指定包层次下某个类或全部类
importstatic静态导入用于导入指定类的某个静态成员变量、方法或全部的静态成员变量、方法。
构造器
构造器最大的用处就是在创建对象时执行初始化
构造器重载(形参列表不同)
构造器调用另一个构造器需使用this关键字,而且必须作为构造器执行体的第一条语句。
类的继承
Java子类不能获得父类的构造器
重写父类的方法要遵循“两同两小一大”的规则。两同:方法名、形参列表相同;两小:返回值类型,抛出异常类;一大:访问权限。(重写方法,覆盖方法和被覆盖方法要同时为实例方法,或者类方法)
super在子类中调用父类被覆盖方法;在子类中调用父类构造器。
多态
相同类型的变量、调用同一个方法时呈现出多种不同的行为特征,就是多态。
java允许将子类对象直接赋给父类引用变量。(向上转型upcasting)
编译时类型转换成运行时类型,需要强制类型转换,要借助于类型转换运算符。
instanceof:前一个 *** 作数通常是一个引用类型变量,后一个通常是一个类或者接口。昌平北大青鸟发现用于判断前一个对象是否是后面的类或者其子类、实现类的实例。
instanceof前面 *** 作数的编译时类型要么与后面类相同或者与后面类具有父子继承关系,否则会编译错误。
面向对象技术是目前流行的系统设计开发技术,它包括面向对象分析和面向对象程序设计。面向对象程序设计技术的提出,主要是为了解决传统程序设计方法——结构化程序设计所不能解决的代码重用问题。
面向对象的编程方法具有四个基本特征:
1抽象:
抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。比如,我们要设计一个学生成绩管理系统,考察学生这个对象时,我们只关心他的班级、学号、成绩等,而不用去关心他的身高、体重这些信息。抽象包括两个方面,一是过程抽象,二是数据抽象。过程抽象是指任何一个明确定义功能的 *** 作都可被使用者看作单个的实体看待,尽管这个 *** 作实际上可能由一系列更低级的 *** 作来完成。数据抽象定义了数据类型和施加于该类型对象上的 *** 作,并限定了对象的值只能通过使用这些 *** 作修改和观察。
2继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。这也体现了大自然中一般与特殊的关系。继承性很好的解决了软件的可重用性问题。比如说,所有的Windows应用程序都有一个窗口,它们可以看作都是从一个窗口类派生出来的。但是有的应用程序用于文字处理,有的应用程序用于绘图,这是由于派生出了不同的子类,各个子类添加了不同的特性。
3封装:
封装是面向对象的特征之一,是对象和类概念的主要特性。封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。一旦定义了一个对象的特性,则有必要决定这些特性的可见性,即哪些特性对外部世界是可见的,哪些特性用于表示内部状态。在这个阶段定义对象的接口。通常,应禁止直接访问一个对象的实际表示,而应通过 *** 作接口访问对象,这称为信息隐藏。事实上,信息隐藏是用户对封装性的认识,封装则为信息隐藏提供支持。封装保证了模块具有较好的独立性,使得程序维护修改较为容易。对应用程序的修改仅限于类的内部,因而可以将应用程序修改带来的影响减少到最低限度。
4 多态性:
多态性是指允许不同类的对象对同一消息作出响应。比如同样的加法,把两个时间加在一起和把两个整数加在一起肯定完全不同。又比如,同样的选择编辑-粘贴 *** 作,在字处理程序和绘图程序中有不同的效果。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。
面向对象程序设计具有许多优点:
1、开发时间短,效率高,可靠性高,所开发的程序更强壮。由于面向对象编程的可重用性,可以在应用程序中大量采用成熟的类库,从而缩短了开发时间。
2、应用程序更易于维护、更新和升级。继承和封装使得应用程序的修改带来的影响更加局部化。
1、正确
2、错误
3、错误
4、错误
5、正确
1、类是具有相同方法和属性的对象的集合与抽象
对象是现实世界中存在的一个事物。
2异常是程序在执行时发生的事件,它会打断指令的正常流程
处理:1在发生异常的地方直接处理;
2将异常抛给调用者,让调用者处理
以上就是关于java程序设计 面向对象基础 实验全部的内容,包括:java程序设计 面向对象基础 实验、昌平北大青鸟分享java面向对象、java面试题 面向对象三大特征的理解等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)