JAVA学习1.3

  1. JAVA中next()系列与nextLine的坑
  2. 初学java继承

1. JAVA中next()系列与nextLine的坑

最近写题时发现JAVA的Scanner是真的坑,把我半小时可以解决的题耗了将近两个小时 (呃…也可能是我太菜

简单说说我遇到的坑吧。
next,nextInt,nextDouble,nextFloat在nextLine会导致nextLine的数据无法输入
先展示现象:
在这里插入图片描述:
在这里插入图片描述
看,我根本输入不了姓名便直接结束了输入。
经过我的尝试与百度,终于找出了原因:
next()系列的函数使用后会返回数据并滞留一个 ’ \n '在缓冲区间,直接被nextLine()吸收,所以相当于输入了一个空字符串,使得无法在键盘上输入数据。
相当于C/C++中的scanf()使用后的滞留’ \n '被其后的getline() / gets()吸收一样。

解决方法:
在每个next()系列函数后nextLine()前使用nextLine()吸收滞留的’ \n ’
如图:在这里插入图片描述


2.初学java继承

特点:

  1. 一个类继承另一个类需要使用关键字:extends (如:class child extends parents{})
  2. java只支持单继承,所以一个类只能有一个父类(就像一个人只可能有一个亲生父亲一样)(虽然只能单继承,但也可以通过祖父->父亲->儿子的方法实现多继承)
    如:

class Father{
    void he(){
        System.out.print("Hello ");
    }
}

class Child extends Father{
	void llo(){
        System.out.println("World!");
		}
}
class Kid extends Child{
    public static void main(String args[]){
       Kid xiaoming=new Kid();
	   xiaoming.he();
	   xiaoming.llo();
    }
}

输出:

  1. 子类可以拥有父类的方法和属性
  2. 子类可以拥有自己的方法与属性
  3. 子类可以重写覆盖父类的方法
    如:
    在这里插入图片描述
class Father{
    void bye(){
        System.out.println("拜拜!");
    }
}

//重写
class Child extends Father{
    void bye(){
        System.out.println("再见!");
    }
}

class Main extends Child{
    public static void main(String args[]){
        Main xiaoming=new Main();
        xiaoming.bye();
    }
}

输出:
在这里插入图片描述
与课堂知识相联系:
Object类是所有类的父类!!!(java.lang.Object)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值