黑马程序员技术交流社区

标题: 个人总结前9天面试题 [打印本页]

作者: yuanzhen    时间: 2016-5-5 18:04
标题: 个人总结前9天面试题
面试题总结:
Day02:看下面的程序是否有问题,如果有问题,请指出并说明理由。
        * byte b1 = 3;
        * byte b2 = 4;
        * byte b3 = b1 + b2;
        // 从两方面去回答这个题
        // b1和b2是两个变量,变量里面存储的值都是变化的,所以在程序运行中JVM是无法判断里面具体的值
        // byte类型的变量在进行运算的时候,会自动类型提升为int类型
         byte b4 = 3 + 4;
        // 3和4都是常量,java有常量优化机制,就是在编译的的时候直接把3和4的结果赋值给b4了
Day02:面试题
        * byte b = 10;
        * b++;
        * b = b + 1;
        * 问哪句会报错,为什么
        //b = b + 1 会报错,因为b + 1 类型提升为int类型.
Day02:面试题:看下面的程序是否有问题,如果有问题,请指出并说明理由。
        * short s=1;s = s+1;//有  s = (byte)(s +1);
        * short s=1;s+=1;//没有
Day03:面试题:
        * 请自己实现两个整数变量的交换
        //int  a = a^b;
        //int  b = a^b;
        //int  a = a^b;
        * 注意:以后讲课的过程中,我没有明确指定数据的类型,默认int类型。
Day03:面试题
        * byte可以作为switch的表达式吗?// 可以
        * long可以作为switch的表达式吗?// 不可以
        * String可以作为switch的表达式吗?// 可以
Day08:面试题
   A:看程序写结果  

                class Student {
                        static {
                                System.out.println("Student 静态代码块");
                        }
                       
                        {
                                System.out.println("Student 构造代码块");
                        }
                       
                        public Student() {
                                System.out.println("Student 构造方法");
                        }
                }
       
                class Demo2_Student {
                        static {
                                System.out.println("Demo2_Student静态代码块");
                        }
                       
                        public static void main(String[] args) {
                                System.out.println("我是main方法");
                               
                                Student s1 = new Student();
                                Student s2 = new Student();
                        }
                }
/*
          Demo2_Student静态代码块
          我是main方法
          Student 静态代码块
          Student 构造代码块
          Student 构造方法
          Student 构造代码块
          Student 构造方法
*/


看程序写结果1
                class Fu{
                        public int num = 10;
                        public Fu(){
                                System.out.println("fu");
                        }
                }
                class Zi extends Fu{
                        public int num = 20;
                        public Zi(){
                                System.out.println("zi");
                        }
                        public void show(){
                                int num = 30;
                                System.out.println(num);
                                System.out.println(this.num);
                                System.out.println(super.num);
                        }
                }
                class Test1_Extends {
                        public static void main(String[] args) {
                                Zi z = new Zi();
                                z.show();
                        }
                }
/* 答案:Fu
       zi
           30
           20
           10
*/
                看程序写结果2
                class Fu {
                        static {
                                System.out.println("静态代码块Fu");
                        }
       
                        {
                                System.out.println("构造代码块Fu");
                        }
       
                        public Fu() {
                                System.out.println("构造方法Fu");
                        }
                }
       
                class Zi extends Fu {
                        static {
                                System.out.println("静态代码块Zi");
                        }
       
                        {
                                System.out.println("构造代码块Zi");
                        }
       
                        public Zi() {
                                System.out.println("构造方法Zi");
                        }
                }
       
                Zi z = new Zi(); 请执行结果。
/*答:静态代码块Fu
   静态代码块Zi
   构造代码块Fu
   构造方法Fu
   构造代码块Zi
   构造方法Zi
*/
A:方法重写的面试题
        * Override和Overload的区别?Overload能改变返回值类型吗?
        /* overload可以改变返回值类型,只看参数列表
         方法重写:子类中出现了和父类中方法声明一模一样的方法。与返回值类型有关,返回值是一致(或者是子父类)的
       
         方法重载:本类中出现的方法名一样,参数列表不同的方法。与返回值类型无关。

         子类对象调用方法的时候:
                 先找子类本身,再找父类。
                */
Day09 面试题
A:看下面程序是否有问题,如果没有,说出结果

                class Fu {
                        public void show() {
                                System.out.println("fu show");
                        }
                }
       
                class Zi extends Fu {
                        public void show() {
                                System.out.println("zi show");
                        }
       
                        public void method() {
                                System.out.println("zi method");
                        }
                }
       
                class Test1Demo {
                        public static void main(String[] args) {
                                Fu f = new Zi();
                                f.method();
                                f.show();
                        }
                }
//f.method() 编译失败
* B:看下面程序是否有问题,如果没有,说出结果
                class A {
                        public void show() {
                                show2();
                        }
                        public void show2() {
                                System.out.println("我");
                        }
                }
                class B extends A {
                        public void show2() {
                                System.out.println("爱");
                        }
                }
                class C extends B {
                        public void show() {
                                super.show();
                        }
                        public void show2() {
                                System.out.println("你");
                        }
                }
                public class Test2DuoTai {
                        public static void main(String[] args) {
                                A a = new B();
                                a.show();
                                B b = new C();
                                b.show();
                        }
                }

// 爱 你
A:面试题1
        * 一个抽象类如果没有抽象方法,可不可以定义为抽象类?如果可以,有什么意义?
        //可以
        // 这么做目的只有一个,就是不让其他类创建本类对象,交给子类完成
* B:面试题2
        * abstract不能和哪些关键字共存
        /* static  static 修饰可以直接类名.调用,不用创建对象,abstract必须由子类创建对象调用
           final   final 修饰的不可以重写,abstract修饰的强制让子类重写,矛盾
           private private 修饰的不可以被其他类访问,无法被子类重写
           */
作者: su3356859    时间: 2016-5-5 18:34
隐含默认转换,b1和b2会自动提升到int类型,会出现损失精度问题。
作者: lrta    时间: 2016-5-5 18:38
有问题,默认强制类型转换,会损失精度
作者: lujianfeng221    时间: 2016-5-5 19:06
就是把大的数据类型往小的数据类型存放
作者: 蛮王123    时间: 2016-5-5 19:14
加油啊    努力
作者: zhoubinjian    时间: 2016-5-5 19:41
我发现 有好几题答案有问题,比如s = (short)(s + 1);你写成了s = (byte)(s + 1);
作者: H_shaohui    时间: 2016-5-5 20:03
总结得还可以!!!可以作为switch()表达式的可以总结详细点。如可以用byte,char,short,int(即int之前的基本类型),jdk1.5后可以用String,JDK1.7可以用枚举。
作者: 黎贵福    时间: 2016-5-5 20:07
开学了像你学习,多总结.呵呵
作者: 阿杜    时间: 2016-5-5 20:17
学的不错哦
作者: xiaogui    时间: 2016-5-5 20:18
有这样的帖子真好,可以慢慢的去复习,温故而知新
作者: saiqqww234    时间: 2016-5-5 20:26
加油。。。。。。。。。
作者: helloworld12138    时间: 2016-5-5 20:28
加油。。。。。。。。。
作者: 心随你远行    时间: 2016-5-5 20:30
加油.........
作者: 幻影之舞    时间: 2016-5-5 20:31
    加油.........
作者: ybqred    时间: 2016-5-5 20:43
一生只为黑马币

作者: yuanzhen    时间: 2016-5-5 20:44
zhoubinjian 发表于 2016-5-5 19:41
我发现 有好几题答案有问题,比如s = (short)(s + 1);你写成了s = (byte)(s + 1);

哦 谢谢,没注意到
作者: Eliloveit    时间: 2016-5-5 20:46
马克一下,楼主下次要细心点哦
作者: taoshan    时间: 2016-5-5 20:50
总结的非常好,细致,我想问一下,你发帖子加不加技术分。我每次发帖子只加经验值和黑马币。
作者: yuanzhen    时间: 2016-5-5 20:52
H_shaohui 发表于 2016-5-5 20:03
总结得还可以!!!可以作为switch()表达式的可以总结详细点。如可以用byte,char,short,int(即int之前的基 ...

谢谢,以后会总结的更详细点,
顺便纠正下,1.5之后是枚举,1.7之后是String
作者: 大大史莱姆    时间: 2016-5-5 20:53
马住,感谢分享
作者: yuanzhen    时间: 2016-5-5 20:54
taoshan 发表于 2016-5-5 20:50
总结的非常好,细致,我想问一下,你发帖子加不加技术分。我每次发帖子只加经验值和黑马币。 ...

不加技术分
作者: taoshan    时间: 2016-5-5 20:57
那请问你是怎么弄到技术分的呢?我这都好几天了,还是2个技术分,黑马要25个技术分才行啊啊
作者: yuanzhen    时间: 2016-5-5 21:03
taoshan 发表于 2016-5-5 20:57
那请问你是怎么弄到技术分的呢?我这都好几天了,还是2个技术分,黑马要25个技术分才行啊啊 ...

用黑马币换啊,6个换一个
作者: 我是黑    时间: 2016-5-5 21:05
这道题目,b1和b2变量在内存中,会自动提升为int类型
作者: 艺高人胆大    时间: 2016-5-5 21:14
到  到到到到到到 到到!
作者: taoshan    时间: 2016-5-5 21:15
yuanzhen 发表于 2016-5-5 21:03
用黑马币换啊,6个换一个

麻烦在问下。那个经验值怎么兑换技术分?
作者: 艺高人胆大    时间: 2016-5-5 21:22
好好好好好好多分享点
作者: jiang0409    时间: 2016-5-5 21:26
看完面试题,,,我觉得任重而道远
作者: yuanzhen    时间: 2016-5-5 21:28
taoshan 发表于 2016-5-5 21:15
麻烦在问下。那个经验值怎么兑换技术分?

经验值不能兑换吧
作者: taoshan    时间: 2016-5-5 21:30
yuanzhen 发表于 2016-5-5 21:28
经验值不能兑换吧

难道说只能用黑马币兑换,那我还要很长时间才能兑换25个技术分,
作者: 小红花    时间: 2016-5-5 21:40
学习了。。。。。
作者: wanli316644570    时间: 2016-5-5 21:43
奋斗.....
作者: 为何帅    时间: 2016-5-5 21:43
已收藏,谢谢楼主分享
作者: guojiedong    时间: 2016-5-5 21:44
加油!!!!!
作者: jacobsnow    时间: 2016-5-5 21:50
娃娃总结的很好嘛。点招的时候绝对用的上……
作者: wxz    时间: 2016-5-5 21:52
确实总结的很好,面试测试都用得到!
作者: 聪明一只哈    时间: 2016-5-5 22:00
还正在看,又涨技能了
作者: sty15193    时间: 2016-5-5 22:00
谢谢楼主
作者: zhangguojian    时间: 2016-5-5 22:06
这是老师讲课给的题目吧
作者: 木木木木    时间: 2016-5-5 22:08
6666666666666
作者: 随风而逸    时间: 2016-5-5 22:09
大家都在自己总结啊
作者: Bellriver    时间: 2016-5-5 22:12
好简单的面试题。。。。
作者: wei19910428    时间: 2016-5-5 22:12
谢谢 分享啊,虽然不难。
作者: lvaenet1    时间: 2016-5-5 22:13
博主很用心  赞一个
作者: tongtian    时间: 2016-5-5 22:19
加油加油加油加油加油
作者: SilentMax    时间: 2016-5-5 22:20
谢谢分享
作者: 风色月下    时间: 2016-5-5 22:20
先谢谢题主
作者: zhangjinbu    时间: 2016-5-5 22:21
谢谢 楼主
作者: zlf1991312    时间: 2016-5-5 22:23
骚年,加油啊!
作者: 15127673623    时间: 2016-5-5 22:24
骚年,加油啊!
作者: !!!嗯    时间: 2016-5-5 22:31
加油!!!!!!!!!!!!
作者: ‘天依~蓝~    时间: 2016-5-5 22:31
不错多学习
作者: LexBurner    时间: 2016-5-5 22:33
面试题好多!搞得我的害怕去面试了!
作者: 大宝剑大飞机    时间: 2016-5-5 22:40
加油加油
作者: chexinxin    时间: 2016-5-5 22:45
16年5月5日
星期四

今天学习了DAY7关于构造方法及static变量的特点与使用
作者: feijiaqi    时间: 2016-5-5 22:49
哈哈  正好要用到  带走了
作者: liuqjss    时间: 2016-5-5 23:02
不错。。。。。。。。。。。
作者: zhaokai123456    时间: 2016-5-5 23:09
好好好好,是个有心人

作者: anziyi    时间: 2016-5-5 23:11
真的挺不错呦!!!!!!!
作者: kgsummer    时间: 2016-5-5 23:14
不错,很多知识点
作者: 来自0419的高兴    时间: 2016-5-5 23:17
这样的贴真暖心
作者: 逍遥林枫    时间: 2016-5-5 23:20
不错  留档了
作者: 林明辉    时间: 2016-5-5 23:24
每日一签
作者: 老司机喔    时间: 2016-5-5 23:28
面试题都是固定从里面抽取的吗
作者: wh19900105    时间: 2016-5-5 23:35
相当认真的童鞋啊
作者: Ewig    时间: 2016-5-5 23:48
总结得不错,学东西就害死要善于总结,不然的话学到后面又忘了前面,这跟猴子搬包谷有什么区别?!所以给楼上赞一个!
作者: frank5    时间: 2016-5-5 23:58
不容易啊 赞一个

作者: 陈泽伟    时间: 2016-5-5 23:59
加油  见到了  .
作者: w125621538    时间: 2016-5-6 00:02
干吧地....
作者: liujian5461267    时间: 2016-5-6 03:57
怎么半夜还这么卡,貌似不是我电脑问题
作者: 追忆睡梦已醒    时间: 2016-5-6 06:40
今天很早吧!!!
作者: itheima2016    时间: 2016-5-6 07:27
谢谢分享!
作者: jialianghao    时间: 2016-5-6 10:46
不错,加油
作者: 精彩    时间: 2016-5-6 11:00
看一下,学习学习
作者: hm837694030    时间: 2016-5-6 12:37
感谢分享》》》。
作者: liucuifu    时间: 2016-5-6 13:37
好熟悉,这是强制类型转换
作者: liunianruoshui    时间: 2016-5-6 20:57
努力,加油,多加分享!
作者: zxcvbnmz    时间: 2016-5-6 22:23
好哈啊好好




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2