Java期末考点总结

Java 知识点 期末复习(记录一些常考知识点)

  • 数组问题
public class Array {
    public static void main(String[] args){
        int a[] = new int[5];      //数组默认初始化全是零
        System.out.println(a[0]);

        char b[] = {'a', 'b', 'c'};
        System.out.println(b);      //字符数组直接打印数组名即可将所有字符输出 因为println()函数对char[]类型进行重载,所以可以直接

        System.out.print("H"+"a");
        System.out.println('H'+'a');  //只有‘+’运算符连接的操作数至少有一个是String类型时,才会执行字符串连接操作。因此这里执行的是加法:72+97=169

        String letters = "ABC";
        char[] numbers = {'1', '2', '3'};
        System.out.println(letters + " easy as " + String.valueOf(numbers));        //ABC easy as 123
        System.out.println(letters + " easy as " + numbers);        //ABC easy as [C@44e81672 原因:字符串拼接操作没有对char[]数组单独处理,所以这里numbers就是数组char[]的地址

    }
}

运行结果:
0
abc
Ha169
ABC easy as 123
ABC easy as [C@277c0f21

  • 多态中的隐藏
class SuperClass{
    int data;

    SuperClass(){
        aMethod(1);     //这里父类的aMethod被隐藏了,父类构造函数调用的实际还是子类aMethod。所以本程序中所有的aMethod都是调用的子类的方法
    }
    
    public void aMethod(int i){
        data += i;
    }

    public void bMethod(){
        System.out.println("Super:" + data);
    }
}

class SubClass extends SuperClass{
    SubClass(){
        aMethod(2);
    }

    public void aMethod(int i){
        data += i * 2;
    }

    public void bMethod(){
        System.out.println("Sub:" + data);
    }
}
public class Polymorphism {
    public static void init(SuperClass a){
        a.aMethod(10);
        a.bMethod();
    }

    public static void main(String[] args){
        init(new SubClass());
    }
    
}

运行结果:
Sub:26

  • 函数形参传递
public class Reference {
    String s = "good";
    char a[] = {'a', 'b', 'c'};     

    public void exchange(char a[],String s){
        this.a[0] = 'g';//第一个参数是引用传递所以可以直接用a[0]='g',也可以用this.a[0]
        s = "Best";//这里不是引用传递,所以若不用this.s那么就是改变的是局部变量s
    }
    public static void main(String[] args){
        Reference ex = new Reference();
        System.out.println(ex.a);
        ex.exchange(ex.a,ex.s);
        System.out.println(ex.a);
        System.out.println(ex.s);
    }
}

运行结果:
abc
gbc
good

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值