zoukankan      html  css  js  c++  java
  • 猜猜两道Java基础面试题的结果

    class TA {
        public String s = "A";
    
        public String getS() {
            return s;
        }
    }
    
    class TB extends TA {
        public String s = "B";
    
        public String getS() {
            return s;
        }
    }
    
    public class TestInheritance {
    
        public static void main(String[] args) {
            TA a = new TA();
            TB b = new TB();
            a.s = "AA";
            b.s = "BB";
    
            a = b;
            // TA a2 = b;
            // System.out.println(a == a2);
            // System.out.println(a2.s);
            // System.out.println(a2.getS());
    
            // java的内存模型:成员变量是放在栈区?
            // 父类引用指向子类对象,方法是可以被覆盖的,但是成员变量是无法覆盖的?
            //
            // (2014.1.18 add)说明,加载TB类时加载了TA类,所以b这个引用地址(堆内存开始的地址)指向的空间
            // 大小为TA.class占用的内存大小和TB.class占用的内存空间,那么就可以解释
            // System.out.println(a.s);输出的结果为什么是'A'了吗?
            // 方法被重写了,但是成员变量不能被重写,所以还是两份
            System.out.println(a.s);
            System.out.println(b.s);
            System.out.println(a.getS());
            System.out.println(b.getS());
        }
    }
    View Code
    public class TestComparisonOperator {
    
        public static void main(String[] args) {
            Long a1 = 19L;
            Long a2 = 19L;
            
            Long b1 = 1900L;
            Long b2 = 1900L;
            //小于128的数,可能会经常用到,所以会转换为基本变量而不是对象引用
            System.out.println(a1 == a2);
            System.out.println(b1 == b2);
            
        }
    }
    View Code
  • 相关阅读:
    Codeforces Round #352 (Div. 1) B. Robin Hood (二分)
    Codeforces Round #209 (Div. 2) D. Pair of Numbers (模拟)
    Kattis
    kattis Curious Cupid (莫队算法)
    HYSBZ
    SPOJ NETADMIN
    day26-2 基于TCP协议的套接字编程
    day26-1 TCP三次握手和四次挥手
    day25-2 OSI协议和socket抽象层
    day25-1 网络架构与互联网组成
  • 原文地址:https://www.cnblogs.com/wenwujuncheng/p/3383639.html
Copyright © 2011-2022 走看看