首页 > 其他分享 >尚硅谷_每日一考_239+282+309

尚硅谷_每日一考_239+282+309

时间:2023-03-01 09:55:32浏览次数:58  
标签:309 调用 一考 子类 radius 239 父类 方法 Man

239
1.构造器的作用是什么?使用中有哪些注意点
创建对象、初始化对象结构
构造方法名与类名相同 和方法并列的结构 类一定有构造器
不能有返回值 也不能加void
构造方法只能通过new运算符调用 Box box = new Box();
只有当需要进行一些特定初始化的场合,才需要定义构造方法

2.关于类的属性的赋值,有几种赋值方式,谈谈赋值的先后顺序
默认初始化-显式初始化-构造器中初始化-对象.方法 或 对象.属性 给属性赋值

3.this关键字可以用来调用那些结构,简单说明一下其使用
属性、方法、构造器
this:理解为当前对象或当前正在创建的对象 对于构造器,可理解为与类同名的结构

4.Java目前的学习设计到的四种权限修饰符都有哪些?并说明各自的权限范围
在堆空间存在 只是可不可见

5.创建Circle类,提供私有的radius属性,提供相应的get和set方法,提供求圆面积的方法

class Circle{
	private double radius;
	public void setRadius(){
		this.radius = radius;
	}
	public double getRadius(){
			return radius;
	}
public double findArea(){
		return 3.14*radius*radius;
	}
}
public static void main(String[] args){
	Cirlce cir = new Circle();
	System.out.println(cir.findArea());
}

282
1.什么是多态性?什么是虚拟方法调用?
对象的多态性:
左边声明一个变量,右边的对象体现为多种形态。父类的引用指向子类的对象。
Person p = new Man();

编译看左边,运行看右边
当通过变量名调用子父类同名同参数的方法时,编译时认为调用的是父类中的方法,实际执行时是调用的子类重写的方法(不针对属性)。
p.eat();

2.一个类可以有(一个)直接父类,一个父类可以有(多个)子类。
子类(可以)获取直接父类的父类中的结构。A is B is true?若是true,可以考虑继承
子类能否获取父类中private权限的属性或方法吗?
可以,私有属性通过获取get、set方法。私有方法若放到公共方法里,通过调用公共方法,可以间接调用

封装性指的是能不能调用的问题
继承性指的是能不能获取的问题

3.方法重写(override/overwrite)的具体规则?
方法名一样,形参列表一样,子类的权限修饰符不大于父类的,子类的返回类型不大于父类的,子类抛出的异常可以小一些
非static修饰的方法,static随着类的加载而加载,不会被子类覆盖。

4.super调用构造器的注意事项
this(形参列表):调用本类重载的其他构造器
super(形参列表):调用父类中指定的构造器,通过形参列表指定。这是默认的

309

1.如何实现向下转型?而要注意什么问题?如何解决此问题?
向上转型指多态
Person p = new Man();
向下转型指多态的逆过程,使用强制转换符:()
Man n = (Man)p;

可能出现ClassCastException异常
使用instanceof在向下转型前判断。
if(p istanceof Man){//判断是不是当前类的实例
Man n = (Man)p;
}

2.==和equals()有何区别?
https://blog.csdn.net/meism5/article/details/89029475
www.cnblogs.com/greyrhinoceros-1998/p/10847652.html

3.class User{ String name; int age;
//重写equals()方法

public boolean equals(Object obj){ if(obj == this){ return true; } if(obj instanceof User){ User u = (User)obj; return this.age == u.age && this.name == this.name.equals(u.name); } return false; }

4.写出8种基本数据类型及其对应的包装类
int Integer char Character

5.基本数据类型、包装类与 String 三者之间如何转換
简化版:自动装箱、自动拆箱
Integer i =10;
基本数据类型、包装类--->String:valueOf(Xxx xx)
String--->基本数据类型、包装类:parseXxx(String s)

标签:309,调用,一考,子类,radius,239,父类,方法,Man
From: https://www.cnblogs.com/zWANG97/p/17166962.html

相关文章