本文共 3137 字,大约阅读时间需要 10 分钟。
1、封装、继承、多态 2、this3、private、default、protected、public4、静态变量5、private
1、对 2、对 3、错 4、对 5、错
1、D 2、ABC 3、A 4、BC 5、BD
1、构造方法是类的一个特殊成员,它会在类实例化对象时被自动调用。而普通方法只有在使用的时候才会被调用。在定义构造方法时要求方法名与类名相同、在方法名的前面没有返回值类型的声明、在方法中不能使用return语句返回一个值。
2、(1)方法名与类名相同;(2)在方法名的前面没有返回值类型的声明;(3)在方法中不能使用return语句返回一个值,但是可以单独写return语句来作为方法的结束。 3、Java面向对象有三大特性,封装是将对象的属性和行为封装起来,不需要让外界知道具体实现细节;继承是可以在无需重新编写原有类的情况下,对原有类的功能进行扩展;多态指的是在一个类中定义的属性和功能被其他类继承后,当把子类对象直接赋值给父类引用变量时,相同引用类型的变量调用同一个方法所呈现出的多种不同行为特性。1.class Student { private String name; private double grade; public Student() { } public Student(String name, double grade) { this.name = name; this.grade = grade; } public String getName() { return name; }public void setName(String name) { this.name = name; } public double getGrade() { return grade; } public void setGrade(double grade) { this.grade = grade; }}public class Test01 { public static void main(String[] args) { Student stu1 = new Student(); stu1.setName("zhangsan"); stu1.setGrade(99); Student stu2 = new Student("lisi", 100); }}
2.public class Test { public static void main(String[] args) { int n = 8; int num = getNum(n); System.out.println("第"+n+"个数的数值是:"+num); } public static int getNum(int n) { if (n == 1){ return 0; } else if (n == 2 || n == 3) { return 1; } else { return getNum(n - 1) + getNum(n - 2); } } }
一.填空题
1.面向对象的三大特征是( )、( )和( ) 2.在非静态成员方法中,可以使用关键字( )访问类的其他非静态成员 3.在Java中,针对类、成员方法和属性提供了四种访问级别,分别是( )、( )、( )和( ) 4.被static关键字修饰的成员变量被称为( ),它可以被该类所有的实例对象共享。 5.所谓类的封装是指在定义一个类时,将类中的属性私有化,即使用( )关键字来修饰。 二.判断题 1.在定义一个类的时候,如果类的成员被private所修饰,该成员不能在类的外部被直接访问。() 2.Java中的每个类都至少有一个构造方法,一个类中如果没有定义构造方法,系统会自动为这个类创建一个默认的构造方法。() 3.声明构造方法时,不能使用private关键字修饰。()错× 4.类中static修饰的变量或方法,可以使用类名或对象的引用变量访问。() 5.静态代码块会随着类对象的创建而执行。() 三.选择题 1.下面哪一个是正确的类的声明?() A.public void HH{…} B.public class Move(){…} C.public class void number{.} D.public class Car{…} 2.下面对于构造方法的描述,正确的有哪些?(多选)() A.方法名必须和类名相同 B.方法名的前面没有返回值类型的声明 C.在方法中不能使用return语句返回一个值 D.当定义了带参数的构造方法,系统默认的不带参数的构造方法依然存在 3.在Java中,针对类和提供了4种访问级别,以下控制级别由小到大依次列出正确的是() A.private、default、protected和public B.default、private、protected和public C.protected、default、private和public D.protected、private、default和public 4.请先阅读下面的代码public class Test{ public Test(){ System.out.println("构造方法一被调用了");}public Test(int x){ System.out.println("构造方法二被调用了");}public Test(boolean b){ this(1);System.out.println("构造方法三被调用了");}public static void main(String[]args){ Test test = new Test(true);}}
上面程序的运行结果为下列哪一项?()
A.构造方法一被调用了 B.构造方法二被调用了 C.构造方法三被调用了 D.以上三个选项之和 5.以下关于static关键字的说法正确的是?(多选)() A.static关键字可以修饰类 B.static关键字可以修饰成员 C.static关键字可以修饰所有的变量 D.static关键字可以修饰代码块 四.简答题 1.简述构造方法和普通的成员方法有什么区别 2.简述Java中构造方法须同时满足的条件 3.简述Java面向对象特性。 五.编程题 1.请按照以下要求设计一个学生类Student,并进行测试。要求如下: (1)Student类中包含姓名、成绩两个属性。 (2)分别给这两个属性定义两个方法,一个方法用于设置值,另一个方法用于获取值。 (3)Student类中定义一个无参的构造方法和一个接收两个参数的构造方法,两个参数分别为姓名和成绩属性赋值。 (4)在测试类中创建两个Student对象,一个使用无参的构造方法,然后调用方法给姓名和成绩赋值,另一个使用有参的构造方法,在构造方法中给姓名和成绩赋值。 2.定义一个这样的数列:0,1,1,2,3,5,…(斐波那契数列)。要求如下: 使用递归方法获取第n个数的数值。转载地址:http://crisz.baihongyu.com/