首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏Java帮帮-微信公众号-技术文章全总结

    Java基础-day10-基础题-继承;抽象

    Java基础-day10-基础题-继承&抽象 什么是继承?继承有什么好处? 继承是面向对象最显著的一个特性。继承是从已有的中派生出新的,新的能吸收已有的数据属性和行为,并能扩展新的能力。 Java继承是使用已存在的的定义作为基础建立新的技术,新的定义可以增加新的数据或新的功能,也可以用父的功能,但不能选择性地继承父。 继承来的属性和方法尽管是隐式的,但仍是C的属性和方法。继承是在一些比较一般的基础上构造、建立和扩充新的最有效的手段。 从理论上说,一个可以是多个一般的特殊,它可以从多个一般中继承属性与方法,这便是多重继承。Java出于安全性和可靠性的考虑,仅支持单重继承,而通过使用接口机制来实现多重继承。 个人认为这更好的提现了JAVA特性中的封装,而且符合软件工程的设计思想:低耦合 2. 关于静态成员变量 无论父中的成员变量是静态的、还是非静态的,子类都会拥有父中的这些成员变量。 3.

    1.1K60发布于 2018-03-19
  • 来自专栏Vamei实验室

    Java基础10 接口的继承与抽象

    接口继承 接口继承(inheritance)与继承很类似,就是以被继承的interface为基础,增添新增的接口方法原型。 我们以Cup作为原interface: interface Cup { void addWater(int w); void drinkWater(int w); } 我们在继承Cup的基础上 interface的多重继承 在Java的继承中,一个衍生只能有一个基。也就是说,一个不能同时继承多于一个的。 我们需要在每个中覆盖Food的eat()方法。 ? 抽象与具体 Java中提供了抽象(abstract class)的语法,用于说明及其方法的抽象性。 中的另一个方法happyFood()并不是 当一个中出现abstract方法时,这个的声明必须加上abstract关键字,否则Java将报错。一个abstract不能用于创建对象。

    949100发布于 2018-01-18
  • 来自专栏微信公众号:Java团长

    Java基础10 接口的继承与抽象

    点击上方“Java团长”,选择“置顶公众号” 干货文章第一时间送达! 在实施接口中,我们利用interface语法,将interface从定义中独立出来,构成一个主体。 接口继承 ---- 接口继承(inheritance)与继承很类似,就是以被继承的interface为基础,增添新增的接口方法原型。 interface的多重继承 ---- 在Java的继承中,一个衍生只能有一个基。也就是说,一个不能同时继承多于一个的。 我们需要在每个中覆盖Food的eat()方法。 ? 抽象与具体 Java中提供了抽象(abstract class)的语法,用于说明及其方法的抽象性。 中的另一个方法happyFood()并不是 当一个中出现abstract方法时,这个的声明必须加上abstract关键字,否则Java将报错。一个abstract不能用于创建对象。

    55320发布于 2018-08-03
  • 来自专栏Java帮帮-微信公众号-技术文章全总结

    Java基础-day10-代码题-继承&抽象

    Java基础-day10-代码题-继承&抽象 1.门类继承题: 编写代码,实现如下功能: (1)定义一个门类, 包含3个属性:宽度width 和 高度height ,颜色color 包含2个方法: (3)定义一个测试,测试定义一个main方法 分别创建 门对象 和 木头门对象, 为创建的木头门对象属性赋值, 调用开门和关门两个方法。 ? ? ? ,内容为:“猫吃鱼...” 3、定义狗,继承动物类,重写父中的吃饭方法,内容为:“狗吃骨头...” 4、定义测试,分别创建猫对象和狗对象,并分别给父对象中的名称和年龄属性赋值; 5、分别使用猫对象和狗对象获取名称和年龄的属性值并打印在控制台上 ..."); } } package StudentJavaSEday10; /* * 猫继承动物类: */ public class Mao extends DongWu{ //重写吃饭的方法 ; public void chiFan() { System.out.println("猫吃鱼..."); } } package StudentJavaSEday10; /* * 测试

    1.4K60发布于 2018-03-19
  • 来自专栏Python爱好者

    Java基础笔记10

    面向对象(包的定义及注意事项) A:定义包的格式 package 包名; 多级包用.分开即可 B:定义包的注意事项 A:package语句必须是程序的第一条可执行的代码 B:package语句在一个java HelloWorld.java b:通过java命令执行。 java 包名.HellWord 10.04_面向对象(不同包下之间的访问) A:案例演示 不同包下之间的访问 10.05_面向对象(import关键字的概述和使用) A:案例演示 为什么要有import 成员内部类被静态修饰后的访问方式是: 外部类名.内部类名 对象名 = new 外部类名.内部类名(); 10.11_面向对象(成员内部类的面试题) A:面试题 要求:使用已知的变量,在控制台输出30,20,10 class Outer { public int num = 10; class Inner { public int num = 20;

    68770发布于 2018-06-21
  • 来自专栏全栈程序员必看

    JAVA基础—11.29

    乔丹']) pop2=queue.popleft() print(pop2)#哈登,左删除 print(queue)#deque(['字母哥', '詹姆斯', '科比', '乔丹']) 七、分支 a=10 if(a>10): print("a大于10") else: print("a不大于10") 八、循环 1.for循环 循环遍历列表,循环次数取决于列表元素个数 range()范围性方法默认从0 将一串数据中的单个数据依次循环查看和使用 for i in [1,2,3,4,5]: print(i) for i range(5): print(i) 2.whlie循环 while(循环终止条件) a=0 while(a<10 赋值 import math #列表生成式 #变量的声明,一般采用驼峰命名法,当名称出现多个单词时, # 首单词首字母小写,其余后面单词首字母大写 numList=[] for i in range(10 ): numList.append(i) print(numList)#[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] numList1=[i for i in range(10)]

    60130发布于 2021-09-26
  • 来自专栏闻道于事

    Java基础

    Java基础库 使用Scanner获得键盘输入: public class ScannerKeyBoardTest { public static void main(String[] args Java7新增的Objects: public class ObjectsTest { // 定义一个obj变量,它的默认值是null static ObjectsTest obj; 为了避免程序中对于double运算的繁琐,可以以BigDecimal基础定义一个Arith工具: public class Arith { // 默认除法运算精度 private static final int DEF_DIV_SCALE = 10; // 构造器私有,让这个不能实例化 private Arith() {} // 提供精确的加法运算。 Java 8专门新增了一个java.time包,该包下包含了如下常用:  Clock、Duration、LocalDate、LocalTime、LocalDateTime、MonthDay、Year、

    2.5K60发布于 2018-07-04
  • 来自专栏程序员互动联盟

    java基础】匿名

    昨天后台的一个小伙伴提到了,java里面的匿名,这个概念在平常java码代码的时候用的特别多,所以找了一篇介绍表述比较清晰的文章分享给大家,能极大的简化代码量,是java编码基本功,属于必须掌握的范畴 匿名内部类也就是没有名字的内部类 正因为没有名字,所以匿名内部类只能使用一次,它通常用来简化代码编写 但使用匿名内部类还有个前提条件:必须继承一个父或实现一个接口 实例1:不使用匿名内部类来实现抽象方法 然后实现了Child的一个实例,将其向上转型为Person的引用 但是,如果此处的Child只使用一次,那么将其编写为独立的一个岂不是很麻烦? 中的方法在大括号中实现了 这样便可以省略一个的书写 并且,匿名内部类还能用于接口上 实例3:在接口上使用匿名内部类 interface Person { public void eat();} ,那么其子类中的方法都可以使用匿名内部类来实现 最常用的情况就是在多线程的实现上,因为要实现多线程必须继承Thread或是继承Runnable接口 实例4:Thread的匿名内部类实现 public

    91270发布于 2018-03-16
  • 来自专栏Golang开发

    Java基础——&对象

    是对某一事物的抽象描述,而对象用于表示现实中该类事物的个体。 的定义 [修饰符] class 名{ } 定义的注意: (1)如果类使用了public 修饰符 必须保证当前的文件名和当前相同 (2) 名使用名称表示 表示某一事物 首字母大写 public 一个引用变量没有通过new分配内存空间,这个对象就是空对象,Java使用关键字null表示空对象。 当调用一个空对象的实例变量或实例方法时,会抛出空指针异常NullPointException String str = null; System.out.println(str.length());//java.lang.NullPointerException 当一个对象被创建后,对象保存在堆内存中,Java程序不允许直接访问堆内存的对象,不管是数组还是对象,当程序访问引用变量的成员值或者方法时,实际上是访问引用变量的所指向的数组或者对象的成员变量或者方法。

    64220发布于 2019-05-28
  • 来自专栏AI星球

    Java基础--容器

    面试官:Java的容器你有什么了解吗? -:额,没有用过.... 面试官:你肯定用过,但你没有注意过.... -:应该是吧.... 你知道什么是容器吗? Java容器可以说是增强程序员编程能力的基本工具,本文将与您一起理解容器,看完之后你也许会恍然大悟,这原来就是容器啊,一起避免面试时的尴尬!!!! 我们可以通过创建引用来持有对象,如 Class clazz; 也可以通过数组来持有多个对象,如 Class[] clazs = new Class[10]; 然而,一般情况下,我们并不知道要创建多少对象 数组显然只能创建固定长度的对象,为了使程序变得更加灵活与高效,Java库提供了一套完整的容器,具备完善的方法来解决上述问题。 2.容器的类别 ? Collection<Integer> c = new ArrayList<Integer>(); for(int i = 0; i < 10; i++){

    84830发布于 2018-09-12
  • 来自专栏迁移内容

    Java基础Java与对象

    Java是完全面向对象的,必须熟悉OOP才能够编写Java程序。面向对象的程序是由对象组成的,每个对象包含对用户公开的特定功能部分和隐藏的实现部分。 ---- 上一篇内容:Java基础Java流程控制 下一篇内容:Java基础Java面向对象 更多知识学习:全网最全的 Java 技术栈内容梳理(持续更新中) ---- 文章目录 一、面向对象程序设计概述 Java是完全面向对象的,必须熟悉OOP才能够编写Java程序。面向对象的程序是由对象组成的,每个对象包含对用户公开的特定功能部分和隐藏的实现部分。 1、 (class)是构造对象的模板或蓝图。 我们可以将想象成制作小甜饼的切割机,将对象想象为小甜饼。由构造(construct)对象的过程称为创建的实例(instance)。 用 Java 编写的所有代码都位于某个的内部。 标准的 Java 库提供了几千个,可以用于用户界面设计、日期、日历和网络程序设计。尽管如此,还是需要在 Java 程序中创建一些自己的,以便描述应用程序所对应的问题域中的对象。

    67340编辑于 2022-12-02
  • 来自专栏阿Q说代码

    Java基础——根与String

    转眼间我们已经工作完一周了,这周开始阿Q要不定时更新知识了,先让我们来学习一下java中的Object与string吧。 Object API:Application Programming Interface 应用程序编程接口,Java API就是Java提供给我们使用的,这些将底层的实现封装了起来,我们不需要关心这些是如何实现的 ,只需要学习这些如何使用。 Object:所有都直接或者间接的继承自Object,是层次结构的根、 public int hashCode() 返回该对象的哈希码值。默认情况下,该方法会根据对象的地址来计算。 此方法返回此 Object 的运行时对象,也就是Class的一个对象,此对象用来描述的class文件。

    65920发布于 2021-05-13
  • 来自专栏springboot

    Java基础(十二):枚举

    Java基础系列文章 Java基础(一):语言概述 Java基础(二):原码、反码、补码及进制之间的运算 Java基础(三):数据类型与进制 Java基础(四):逻辑运算符和位运算符 Java基础(五) :流程控制语句 Java基础(六):数组 Java基础(七):面向对象编程 Java基础(八):封装、继承、多态性 Java基础(九):Object 的使用 Java基础(十):关键字static、代码块 、关键字final Java基础(十一):抽象、接口、内部类 Java基础(十二):枚举 Java基础(十三):注解(Annotation) Java基础(十四):包装 Java基础(十五):异常处理 Java基础(十六):String的常用API Java基础(十七):日期时间API Java基础(十八):java比较器、系统相关、数学相关 Java基础(十九):集合框架 Java基础(二十) :泛型 Java基础(二十一):集合源码 Java基础(二十二):File与IO流 Java基础(二十三):反射机制 Java基础(二十四):网络编程 Java基础(二十五):Lambda表达式、方法引用

    48610编辑于 2025-01-21
  • 来自专栏rikka

    Java 基础(六) Object

    Java 中,这个“根”就是 Object 。 Object 中包含有: toString() equals() 两个方法,前者可以打印对象的信息(可以在子类中具体实现);后者判断是否管理着同一个对象 (默认实现为 ==) 。 比如,要实现只要 CD 中 artist 成员相同,equals()就返回 true,需要这样写: @Override public boolean equals(Object obj) {

    29910编辑于 2022-01-19
  • 来自专栏springboot

    Java基础(十四):包装

    Java基础系列文章 Java基础(一):语言概述 Java基础(二):原码、反码、补码及进制之间的运算 Java基础(三):数据类型与进制 Java基础(四):逻辑运算符和位运算符 Java基础(五) :流程控制语句 Java基础(六):数组 Java基础(七):面向对象编程 Java基础(八):封装、继承、多态性 Java基础(九):Object 的使用 Java基础(十):关键字static、代码块 、关键字final Java基础(十一):抽象、接口、内部类 Java基础(十二):枚举 Java基础(十三):注解(Annotation) Java基础(十四):包装 Java基础(十五):异常处理 Java基础(十六):String的常用API Java基础(十七):日期时间API Java基础(十八):java比较器、系统相关、数学相关 Java基础(十九):集合框架 Java基础(二十) :泛型 Java基础(二十一):集合源码 Java基础(二十二):File与IO流 Java基础(二十三):反射机制 Java基础(二十四):网络编程 Java基础(二十五):Lambda表达式、方法引用

    27310编辑于 2025-01-21
  • 来自专栏学习

    Java基础语法】String

    ,而字 符串应用又非常广泛,因此Java语言专门提供了 String 。   )); //'b' System.out.println(s.indexOf('c')); //6 System.out.println(s.indexOf('c', 10 //15 System.out.println(s.indexOf("bbb")); //3 System.out.println(s.indexOf("bbb", 10 12 System.out.println(s.lastIndexOf('c'));//17 System.out.println(s.lastIndexOf('c', 10 ); System.out.println(str.substring(0, 5)); 输出结果: hello world  注意:在java

    35410编辑于 2024-09-24
  • 来自专栏全栈开发日记

    Java基础】方法、、对象

    Java语言中,方法大多用于处理一些数据并得到结果,其包括以下几种要素: 修饰符:用于限定方法的权限,常用的有public、private、static。 方法的重载 Java语言规定,在同一个中,允许出现同名的方法,只要方法的参数列表不同即可,这就是方法的重载。 参数列表不同,指的是个数、顺序或数据类型不同。 方法的重写 Override 子类中如果出现了与父一模一样的方法时,子类会重写父的方法。方法声明要与父相同,而且修饰权限不能比父更低。 此处内容在后期讲解继承的时候会再次详解。 是什么?生活中的解释就是由一些具有共同特征的个体组成的一个群体,比如人类。在Java中也是如此,更加专业的说法是描述一对象的行为和状态。 在Java语言中存在一些提前由jdk开发者定义好的,我们可以直接导入调用,比如String等等。当然,我们也可以自定义。 自定义即是对现实中事物的描述,描述事物的属性方法。

    59310编辑于 2022-05-12
  • 来自专栏cwl_Java

    Java基础-常用(三)

    本文链接:https://blog.csdn.net/weixin_42528266/article/details/102971807 Math 包含了常见的数学运算函数。 random() 生成[0,1)之间的随机浮点数 生成:0-10之间的任意整数:int a = (int)(10*Math.random()); 生成:20-30之间的任意整数:int b = 20 + (int)(10*Math.random()); 枚举 只能够取特定值中的一个 使用enum关键字 所有的枚举类型隐性地继承自 java.lang.Enum。 (枚举实质上还是!而每个被枚举的成 员实质就是一个枚举类型的实例,他们默认都是public static final的。可以直接通过枚举 类型名直接使用它们。) 强烈建议当你需要定义一组常量时,使用枚举类型 尽量不要使用枚举的高级特性,事实上高级特性都可以使用普通来实现,没有必要引 入复杂性! File 文件和目录路径名的抽象表示形式。

    36010发布于 2019-11-12
  • 来自专栏步履前行

    Java基础篇-包装

    至于基本类型,难点不多,我们不在叙述了,这次我们讲 另一种类型 --- 封装类型 ---- Java 有 8 种基本类型,每种基本类型都有一个对应的包装类型. 包装又是啥呢? 包装指的是 Java,内部有实例变量,保存了与之相对应的基本类型的值,这些方法,变量和其他的实例方法. ---- Integer 对于包装来说,我们经常用到的一个就是自动装箱和拆箱,当然由于 Java 编译器的问题,不需要我们手动来操作,不过这里给大家顺便解释下 基本类型到包装类型的过程,我们一般称之为装箱 = 0) { sum += i; } } 在我们写了上述自动拆箱、装箱的代码后,Java 编译器会帮我们把 代码替换为valueOf 相关的代码 比如: i = new Integer(10); 当然,强烈建议用 valueOf 方法,毕竟很直观的来看,构造方法需要用到内存来新建对象,而且从 Java9 开始,已经被标记 过时了。

    77600发布于 2019-04-18
  • 来自专栏FutureTester

    Java基础学习-Scanner

    Scanner 的作用是用来获取用户的输入 前提: import java.util.Scanner; 创建文件扫描器对象,System.in表示的是标准输入 (装饰者模式????

    37263编辑于 2021-12-12
领券