文章目录
- 简述private关键字的特点?
1.可以修饰成员变量,也可以修饰成员方法,但是都只能在本类访问,外界类不能够访问 2.这些被私有修饰的成员变量,或者成员方法,可以间接通过公共方法来访问! 3.是一个权限修饰符
- 定义一个学生类:
成员变量: 姓名 , 年龄 构造方法: 无参,有参 成员方法: 成员变量对应的getXxx和setXxx方法 然后使用这个学生类
package org.oracle.test;
public class Student {
private String name;
private int age;
public Student() {
}
public Student(String name, int age) {
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
public void setName(String newName) {
this.name = newName;
}
public void setAge(int newAge) {
this.age = newAge;
}
public static void main(String[] args) {
Student s1 = new Student();
s1.setName("小明");
s1.setAge(15);
System.out.println(s1.getName());
System.out.println(s1.getAge());
}
}
//小明 //15
- 补全代码
package org.oracle.test;
public class Student {
public void show(Student s) {
s.method();
}
private void method() {
System.out.println("哈哈...method方法被调用了....");
}
}
package org.oracle.test;
public class StudentDemo {
public static void main(String[] args) {
Student s1 = new Student();
s1.show(s1);
}
}
- 继承的好处、弊端分别是什么?
子类可以使用父类的方法和属性,可以扩展 继承的好处: 1.提高了代码的复用性(多个类相同的成员可以放到同一个类里) 2.提高了代码的维护性(如果放大的代码需要修改,修改一处就行) 继承的弊端: 继承让类与类之间产生了关系,类的耦合性增强了,当父类发生变化时子类实现也不得不跟着变化,削弱了子类的独立性。
- Java中继承的特点是什么?
1.只支持单继承,即一个子类只允许有一个父类。 2. 子类可以拥有父类的属性和方法 3. 子类可以拥有自己的属性和方法 4. 子类可以重写覆盖父类的方法 5. 可以声明父类,创建子类(又称父类装载子类)
- Overload(重载)和Override(重写)的区别是什么?
作用范围:重写的作用范围是父类和子类之间;重载是发生在一个类里面 参数列表:重载必须不同;重写不能修改 返回类型:重载可修改;重写方法返回相同类型或子类 抛出异常:重载可修改;重写可减少或删除,一定不能抛出新的或者更广的异常
java中“两同两小一大"原则是指重写原则。 重写 要求两同两小一大原则, 方法名相同,参数类型相同,子类返回类型小于等于父类方法返回类型, 子类抛出异常小于等于父类方法抛出异常, 子类访问权限大于等于父类方法访问权限。
- 编写一个Java应用程序,该程序包括3个类:Monkey类、People类和主类E。要求:
(1) Monkey类中有个构造方法:Monkey (String s),并且有个public void speak()方法,在speak方法中输出“咿咿呀呀…”的信息。 (2)People类是Monkey类的子类,在People类中重写方法speak(),在speak方法中输出“小样的,不错嘛!会说话了!”的信息。 (3)在People类中新增方法void think(),在think方法中输出“别说话!认真思考!”的信息。 (4)在主类E中创建Monkey与People类的对象类测试这2个类的功能。
package org.oracle.test;
public class Monkey {
private String s;
public Monkey() {
}
public Monkey(String s) {
}
public void speak() {
System.out.println("咿咿呀呀…");
}
}
package org.oracle.test;
public class People extends Monkey{
@Override
public void speak() {
System.out.println("小样的,不错嘛!会说话了!");
}
public void think() {
System.out.println("别说话!认真思考!");
}
}
package org.oracle.test;
public class E {
public static void main(String[] args) {
Monkey m1 = new Monkey();
People p1 = new People();
m1.speak();
p1.speak();
}
}
//咿咿呀呀… //小样的,不错嘛!会说话了!
- 按要求编写一个Java应用程序:
(1)定义一个类,描述一个矩形,包含有长、宽两种属性,和计算面积方法。 (2)编写一个类,继承自矩形类,同时该类描述长方体,具有长、宽、高属性,和计算体积的方法。 (3)编写一个测试类,对以上两个类进行测试,创建一个长方体,定义其长、宽、高,输出其底面积和体积。
package org.oracle.test;
public class Rectangle {
private double x;
private double y;
public Rectangle() {
}
public Rectangle(double x, double y) {
this.x = x;
this.y = y;
}
public double Area() {
return x * y;
}
}
package org.oracle.test;
public class Cuboid extends Rectangle {
private double z;
public Cuboid() {
}
public Cuboid(double x, double y,double z) {
super(x, y);
this.z = z;
}
public double Volume() {
return Area()* z;
}
}
package org.oracle.test;
public class Test {
public static void main(String[] args) {
Cuboid c1 = new Cuboid(2,3,4);
System.out.println("面积为"+c1.Volume());
}
}
//面积为24.0
|