周测题

1.类和对象是什么关系?类的命名规范是什么?
类是对象的抽象、对象是类的具体的实例。首先要符合标识符的定义,在实际开发中,我们一般使用驼峰命名方式定义类名,并且首字母大写。

2.类的成员有哪些?用于成员变量的修饰符有哪些?

成员变量、方法、构造器、代码块;
public、protected、private、static、final

3.成员变量包含哪些?命名规范分别是什么?
类变量(静态变量):符合标识符定义规则,在开发中,一般全部大写,多个单词之间用_
实例变量:符合标识符定义规则,开发中,一般用驼峰命名,首字母小写

4.请书写定义方法的语法?

[修饰符]  返回值数据类型  方法名(参数列表) {
    执行语句;
}

5.请书写构造器定义的语法?构造器的用途是什么?
[修饰符] 类名(参数列表) {
    执行语句;
}
给类创建对象的
做初始化工作(例如初始化实例变量的值)

6.请简述你对this的理解?写出使用this调用成员变量、方法、构造器的代码示例
在类定义中this没有特殊意义,再具体使用中,在方法的调用中出现了this,这个this代表当前调用该方法的对象。
public class Client {
    private String stu;
    public Client(String stu) {
        this.stu = stu;
    }
    public void fun() {
        System out println(this.stu);
    }        
}

7.方法的参数其实传递的是什么类型的数据?如果传入的是基本数据类型,是否原数据的值会发生改变?如果传入的是引用数据类型呢?阐述原因。

传递的值类型;如果传入的是基本数据类型,原数据的值不会发生改变,如果是引用数据类型会改变,因为方法参数传递是“拷贝值(如果是基本数据类型拷贝本身的值,如果是引用数据类型拷贝的是对象的引用、地址)的副本”

8.方法签名是什么意思?
只包含方法名和参数列表

9.什么是方法重载?
如果在一个类中出现多个方法名一样,参数列表不一样的情况,我们把这样的方法称为方法的重载。
重载的意义是这些方法实现的功能基本一致,但是传入的参数可能不一样。

10。成员变量的命名规则是什么?(示例变量和静态变量)
示例变量:符合标识符定义的规范,在开发中,一般用驼峰命名,首字母小写
静态变量(类变量):符合标识符定义的规范,在开发中,一般用全部大写,多个字母用_

11.请书写标准的对下面两个成员变量的封装方法:

private String name;
private String stuCode;

public void setName(String name) {
    this.name = name;
}
public String getName() {
    return this.name;
}

public void setStuCode(String stuCode) {
    this.stuCode = stuCode;
}
public String getStuCode() {
    return this.stuCode;
}

12.在企业开发中包定义的规范是什么?
符合标识符的命名规范,在实际开发中,为了让类有相对唯一性,使用企业的域名倒着写来定义包名,包名全部用小写规范。
com.dodoke.项目名,模块名

13.我们一般在什么情况下使用import语句?如果不使用import语句,有什么其他的解决方案?
如果在一个类中需要引用不在当前类包中的其他类的时候,使用import语句
不使用import使用类全名:类的包名+类名

14.访问控制修饰符有哪些?分别的控制范围是什么?

private:同一个类
default:同一个类,同一个包
protected:同一个类,同一个包,子类
public:所有都可以

15.对象在创建时的成员变量的默认值分别是什么?

数值型:0,字符串:'\u0000',布尔型:false,
引用数据类型:null

16.请阐述你对继承的理解,继承的使用语法,以及子类从父类能继承的内容有哪些?
继承可以提高代码的可复用性。
[修饰符] class 子类名 extends 父类名() {
};
只要不是private定义的成员变量和方法

17.重载和重写是一样的吗?方法重写的意义是什么?

不一样,重写发生在子类和父类中间,重写方法也叫覆盖方法,当子类需要修改父类的某个方法时,需要进行方法重写

18.super一般用在什么场景中?
在子类的构造器需要显示的调用父类的构造器,使用super,只能出现构造器的第一行。
在子类的方法中,需要调用被隐藏的方法(被子类重新的方法)时,需要显示的用super调用原先父类的方法。

19.引用类型的类型转换发生在什么时候,在进行强制转换的时候为什么要使用instanceof运算符,以及instanceof运算符的使用方法是什么?
在强制转换的过程中,难免会发生类似ClassCastException,为了避免,我们需要先使用instanceof运算符对对象的预转换类型做个判断,一旦符合条件才进行转换。
对象 instanceof 类


20.附加题:33岁巨蟹座的陆老师在给渡课教育java105班的学员上java课(提示:需要定义的类包括:老师类、学员类、课程类等等,要运用封装的概念,要有类变量的定义。最后需要通过方法在控制台打印出上述语句

package com.dodoke.stu;

public class Teacher {
	private String name;
	private int age;
	String  constellation;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public String getConstellation() {
		return constellation;
	}
	public void setConstellation(String constellation) {
		this.constellation = constellation;
	}
	
	public Teacher() {
		super();
		
	}
	public Teacher(String name,int age,String constellation) {
		super();
		this.name = name;
		this.age = age;
		this.constellation = constellation;
	}
	
}


public class Student {
	private String name;
	private String clazz;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getClazz() {
		return clazz;
	}
	public void setClazz(String clazz) {
		this.clazz = clazz;
	}
	
	public Student() {
		super();
		
	}



public class School {
	public static final String NAME = "渡课教育";
	
	public School() {
		super();
	}

}


public class Course {
	private String course;

	public String getCourse() {
		return course;
	}

	public void setCourse(String course) {
		this.course = course;
	}
	
	public Course() {
		super();
	}
	
	public Course(String course) {
		super();
		this.course = course;
	}
}


public class Client {
	public static void main(String[] args) {
		Teacher stu = new Teacher("陆老师",33,"巨蟹座");
		Student cla = new Student("学员","java105班");
		Course cou = new Course("java课");
		
		
		System.out.println(stu.getAge() +"岁"+ stu.getConstellation() + "的"+
		stu.getName() + "在给" + School.NAME + cla.getClazz() + "的" +cla.getName() +
		"上" + cou.getCourse());
	}
}



猜你喜欢

转载自blog.csdn.net/qyswkqy/article/details/80752401