【Java基础4】面向对象(上)

您所在的位置:网站首页 创建对象的语法是指 【Java基础4】面向对象(上)

【Java基础4】面向对象(上)

2024-07-17 18:33:17| 来源: 网络整理| 查看: 265

面向对象(上) 一、填空题

1、 面向对象的三大特征是______、和。

2、 在Java中,可以使用关键字______来创建类的实例对象。

3、 定义在类中的变量被称为______,定义在方法中的变量被称为______

4、 面向对象程序设计的重点是______的设计,______是用来创建对象的模板。

5、 在非静态成员方法中,可以使用关键字______访问类的其它非静态成员。

6、 当一个对象被当成垃圾从内存中释放时,它的______方法会被自动调用。

7、 被static关键字修饰的成员变量被称为______,它可以被该类所有的实例对象共享。

8、 在一个类中,除了可以定义属性、方法,还可以定义类,这样的类被称为______。

10、所谓类的封装是指在定义一个类时,将类中的属性私有化,即使用______关键字来修饰。

回答:

封装,继承,多态new局部变量,成员变量。类,类thisfinalize静态变量内部类(没有第九题)private 二、判断题

1、在定义一个类的时候,如果类的成员被private所修饰,该成员不能在类的外部被直接访问。

2、Java中的每个类都至少有一个构造方法,一个类中如果没有定义构造方法,系统会自动为这个类创建一个默认的构造方法。

3、声明构造方法时,不能使用private关键字修饰。

4、类中static修饰的变量或方法,可以使用类名或对象的引用变量访问。

5、方法内部类中不能访问外部类的成员变量。

回答:

正确正确错误正确错误 三、选择题

1、类的定义必须包含在以下哪种符号之间?

A、方括号[] B、花括号{} C、双引号“” D、圆括号()

2、下面哪一个是正确的类的声明?   A、 public void HH{…} B、 public class Move(){…} C、 public class void number{} D、 public class Car{…}

3、在以下什么情况下,构造方法会被调用?

A、 类定义时 B、 创建对象时 C、 调用对象的方法时 D、 使用对象的变量时

4、下面对于构造方法的描述,正确有哪些?(多选)

A、方法名必须和类名相同

B、方法名的前面没有返回值类型的声明

C、在方法中不能使用return语句返回一个值

D、当定义了带参数的构造方法,系统默认的不带参数的构造方法依然存在

5、使用this调用类的构造方法,下面的说法正确的是?(多选)

A、使用this调用构造方法的格式为this([参数1,参数2…])

B、只能在构造方法中使用this调用其它的构造方法

C、使用this调用其它构造方法的语句必须放在第一行

D、不能在一个类的两个构造方法中使用this互相调用

6、下面哪些可以使用static关键字修饰?(多选)

A、 成员变量 B、局部变量 C、成员方法 D、成员内部类

7、关于内部类,下面说法正确的是?(多选)

A、成员内部类是外部类的一个成员,可以访问外部类的其它成员

B、外部类可以访问成员内部类的成员

C、方法内部类只能在其定义的当前方法中进行实例化

D、静态内部类中可以定义静态成员,也可以定义非静态成员

8、请先阅读下面的代码

public class Test { public Test(){ System.out.println("构造方法一被调用了"); } public Test(int x){ this(); 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、以上三个选项之和

9、Outer类中定义了一个成员内部类Inner,需要在main()方法中创建Inner类实例对象,以下四种方式哪一种是正确的?

A、 Inner in = new Inner() B、Inner in = new Outer.Inner();

C、 Outer.Inner in = new Outer.Inner(); D、Outer.Inner in = new Outer().new Inner();

回答:

BDBABCABCDACDABCDDD 四、程序分析题

阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果。否则请说明编译失败的原因。

代码一:

class A { private int secret = 5; } public class Test1 { public static void main(String[] args) { A a = new A(); System.out.println(a.secret++); } } 代码二: public class Test2 { int x = 50; static int y =200 ; public static void method() { System.out.println(x+y); } public static void main(String[] args) { Test2.method(); } } 代码三: public class Outer { public String name="Outer"; private class Inner { String name="inner"; void showName(){ System.out.println(name); } } public static void main(String[] args) { Inner inner = new Outer().new Inner(); System.out.println(inner.name); } }

回答:

编译不能通过;在类A中secret前用的是private,因此在text1中无法编译;

编译不能通过;由public static void method() 可知,int x和int y前都要加上static,保持一致;

在静态方法method()中不能访问非静态成员变量x

编译通过;结果为inner;

五、简答题

1、构造方法和普通的成员方法有什么区别?

2、什么是方法重写?

3、什么是多态?

4、抽象类和接口的区别?

回答:

构造方法的方法名和类名要一样,且没有返回值,系统会自动隐式生成。普通方法不能new ,只有构造方法才能new。

构造方法是类的一个特殊成员,它会在类实例化对象时被自动调用。而普通方法只有在使用的时候才会被调用。在定义构造方法时要求方法名与类名相同、在方法名的前面没有返回值类型的声明、在方法中不能使用return语句返回一个值

重写:需要有继承关系,子类重写父类的方法! 1、方法名必须相同 2、参数列表必须相同 3、修饰符:范围可以扩大,但是不能缩小 public > protected > default > private 4、抛出的异常:范围可以被缩小,但不能扩大:ClassNotFoundException(小) -->Exception(大) 重写:子类的方法和父类必须要一致;方法体不同。 重写都是方法的重写,与属性无关 为什么需要重写? 1、父类的功能子类不一定需要,或者不一定满足! 快捷键:Alt + Insert : override @Override //注解:有功能的注释! 无法重写: 1、static 方法,属于类,它不属于实例 2、final 常量 3、private 方法

多态:即统一方法可以根据发送对象的不同而采用多种不同的行为方式。(多态是方法的多态,没有属性)

/* 多态注意事项: 1、多态是方法的多态,属性没有多态 2、父类和子类,有联系 ——>类型转换异常! ClassCastException! 3、存在条件: 继承关系,方法需重写,父类引用指向子类对象!father f1 = new Son(); */ abstract 抽象类:本质上还是是类 extends: 单继承; 接口的子类使用 implements 关键字来实现接口,需要提供接口中所有声明的方法的实现,利用接口实现多继承。不能new抽象类,只能靠子类去实现它;抽象类中可以写普通方法;抽象方法必须在抽象类中 接口中的所有定义的方法都是抽象的 public abstract 六、编程题

1、键盘录入一个字符串,把该字符串的首字母转成大写,其余为小写。(只考虑英文大小写字母字符) 11

2、键盘输入若干字符串,利用StringBuilder完成字符串反转。

3、请按照以下要求设计一个学生类Student,并进行测试。

要求如下:

1)Student类中包含姓名、成绩两个属性

2)分别给这两个属性定义两个方法,一个方法用于设置值,另一个方法用于获取值.

3)Student类中定义一个无参的构造方法和一个接收两个参数的构造方法,两个参数分别为姓名和成绩属性赋值

4)在测试类中创建两个Student对象,一个使用无参的构造方法,然后调用方法给姓名和成绩赋值,一个使用有参的构造方法,在构造方法中给姓名和成绩赋值

回答:

public static void main(String[] args) { Scanner scanner = new Scanner(System.in);//创建一个扫描器对象,用于接受键盘数据 System.out.println("请输入一个字符串"); if(scanner.hasNext()){//判断用户有没有输入字符串 String str = scanner.next();//程序会一直等待用户输入完毕 String firstStr = str.substring(0, 1);//获得首字符 String Str= firstStr.toUpperCase();//首字符变大写 String substring = str.substring(1);//获取原字符串第一个字符后面的剩余字符 System.out.println(Str + substring); } scanner.close(); } public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入一个字符串"); String a=scanner.nextLine(); StringBuilder b =new StringBuilder(a); System.out.println("字符串反转后的结果为"+b.reverse()); while (a != null && !a.equals("")) {//当输入的为空或非字符串时结束 System.out.println("请输入一个字符串"); a = scanner.nextLine(); StringBuilder c =new StringBuilder(a); System.out.println("字符串反转后的结果为"+c.reverse()); } System.out.println("end of input string"); scanner.close(); } } public class Student {//学生类 private String name;//名字 private int score;//成绩 public String getName() { return name; } public void setName(String name) { this.name = name; } public int getScore() { return score; } public void setScore(int score) { this.score = score; } public String Name;//名字 public int Score;//成绩 } public class Application {//测试类 public static void main(String[] args) { System.out.println("有参:"); Student s1 = new Student(); s1.setName("小明"); System.out.println(s1.getName()); s1.setScore(99); System.out.println(s1.getScore()); System.out.println("=============================="); System.out.println("无参:"); Student s2 = new Student(); s2.Name = "小红"; s2.Score = 98; System.out.println(s2.Name); System.out.println(s2.Score); } }


【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


    图片新闻

    实验室药品柜的特性有哪些
    实验室药品柜是实验室家具的重要组成部分之一,主要
    小学科学实验中有哪些教学
    计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
    实验室各种仪器原理动图讲
    1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
    高中化学常见仪器及实验装
    1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
    微生物操作主要设备和器具
    今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
    浅谈通风柜使用基本常识
     众所周知,通风柜功能中最主要的就是排气功能。在

    专题文章

      CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭