第一次考核

1. Java中Break,Continue,Return的区别及作用

break 跳出总上一层循环,不再执行循环(结束当前的循环体)

continue 跳出本次循环,继续执行下次循环(结束正在执行的循环 进入下一个循环条件)

return 在无返回值的方法中,作用是:立即跳出并结束当前方法的执行 直接返回

2. java成员变量与局部变量的区别

(1)从语法形式上看,成员变量是属于类的而局部变量是在方法中定义的变量或是方法的参数;成员变量可以被public、private,static等修饰符所修饰,而局部变量则不能被访

问控制修饰符及static所修饰;成员变量和局部变量都可以被final所修饰。

(2)从变量在内存中的存储方式上看,成员变量是对象的一部分,而对象是存在于堆内存的,而局部变量是存在于栈内存的。

(3)从变量在内存中的生存时间上看,成员变量是对象的一部分,它随着对象的创建而存在,而局部变量随着方法的调用而产生,随着方法调用的结束而自动消失。

(4)成员变量如果没有被赋初值,则会自动以类型的默认值赋值(有一种情况例外,被final修饰但没有被static修饰的成员变量必须显式地赋值);而局部变量则不会自动赋值,必须显式地赋值后才能使用。

3. Java面向对象编程的三大特性

封装,继承,多态

4. Java普通类和抽象类有哪些区别

普通类不能包含抽象方法,抽象类可以包含抽象方法。

抽象类不能直接实例化,普通类可以直接实例化。

5,杨辉三角(考察二维数组)
二维数组

数据类型[][] 数组名=new 数据类型[行数,高维][列数,低维];

对于不规则矩形二维数组,在定义时只需给出高维层数 如int[][] x=new int[n][];

不规则先创建高维再创建低维

第一次考核_第1张图片

public static void main(String[] args) {
    System.out.println("杨辉三角");
    System.out.println("输入一个数据");
    Scanner sc=new Scanner(System.in);
    //输入数字控制杨辉三角的层数
    int layer=sc.nextInt();
    //利用二维数组的结构实现(容易赋值)
    int[][] triangle=new int[layer][layer];
    //外层循环控制行的赋值
    for (int i = 0; i 
6,

第一次考核_第2张图片

有void,所以无返回类型,调用方法后不会返回值
7,
java的四个访问修饰符:

访问权限    类    包    子类   其他包

public       ∨     ∨     ∨      ∨

protect      ∨     ∨      ∨      ×

default      ∨     ∨      ×       ×

private      ∨      ×      ×       ×

8,,第一次考核_第3张图片
static{} 静态代码块,类加载时自动执行,由于类只会加载一次,所以静态代码块也只执行一次
9,面向对象编程

第一次考核_第4张图片


public class B {
    public abstract class Vehcile {
        private String brand;

        public String getBrand() {
            return brand;
        }

        public void setBrand(String brand) {
            this.brand = brand;
        }

        public Vehcile() {
        }

        public Vehcile(String brand) {
            this.brand = brand;
        }

        public abstract void start();

        public void stop() {
            System.out.println(brand + "停车成功");
        }
    }
    public interface Convertible{
        void openRoof();
        void closeRoof();
    }
    public class Car extends Vehcile implements Convertible{
        public Car(String brand){
            super(brand);
        }
        private boolean roofStatus=false;//重要的一步!!
        @Override
        public void start() {
            System.out.println(super.getBrand()+"启动成功");
        }

        @Override
        public void openRoof() {
            if(roofStatus==true){
                System.out.println("车顶一打开,请不要重复操作");
            }else{
                roofStatus =true;
                System.out.println("车顶成功打开");
            }

        }

        @Override
        public void closeRoof() {
            if(roofStatus==true){
                roofStatus=false;
                System.out.println("车顶成功关闭");
            }else{
                System.out.println("车顶已关闭,请不要重复操作");
            }

        }
    }

    public void main(String[] args) {
        Car car=new Car("奔驰");
        car.start();
        car.openRoof();
        car.openRoof();
        car.closeRoof();
        car.closeRoof();
        car.stop();
    }
}

一句话一句话的看然后按要求写就行

卡壳的地方: public Car(String brand){
            super(brand);
        }
        private boolean roofStatus=false;

super是一个关键字,经常用来访问父类的成员变量和方法

访问父类的构造方法。在子类中使用'super'关键字可以调用父类中的构造方法,从而为子类的父类型特征初始化值。
访问父类的成员变量和方法。在子类中可以使用'super.'来访问父类的成员变量和方法。

你可能感兴趣的:(java)