Java 的超类构造分析|学习笔记

简介: 快速学习 Java 的超类构造分析。

开发者学堂课程【Scala 核心编程-基础Java 的超类构造分析】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/609/detail/8973


Java 的超类构造分析

 

一、Scala 中超类的构造

1.回顾-Java 中超类的构造

(1)超类:

可以说是父类或者父类的父类,由于超类的构造也是由于继承导致的,所以有的时候会看到超类的一些概念。

(2)说明:

从代码可以看出:在 Java 中,创建子类对象时,子类的构造器总是去调用一个父类的构造器(显式或者隐式调用)。

代码:

package com.atguigu.chapter07.myextends ;

public class ]avaBaseconstractor {(关于java的一个机制)

public static void main(string[] args){

/ /1.A()

/ /2.B()

B b = new B();

//1.A(String name) jack

//2.B( String name) jack

B b2 =new B( name: "jack" );

class A{(这里有一个 A 类,并且有两个构造器,这里写的原因是 scale 对父类的构造有自己的特色)

publicA(){

Super() 这里也隐藏一个父类是 object 的

System.out.println(""A)"");}

}

public A(String name){

System.out.println("A[String name)""+ name);)

}

class B extends A{(这里 B 继承了 A,此时先优先输出上面的 A,在输出这句话)

public B(){

//这里会隐式调用 super);就是无参的父类构造器A()

//super()

System.out.printin("B()"");(当在 B 里没有写任何调用父类构造器时默认调用的是 super)

}

public B(String name) {(在这里显示调用参数 A 的构造器,这里可显示可不显示)

super(name);

system.out.println("B(String name)"+ name);

}

}

这里发现 scala 里面没有那么灵活,如果子类想调用父类的构造器是必须的但是出口只有一个。

输出的内容:

//1.A()

//2.B()

B b = new B();

//1.A(String name)jack

//2.B(String name)jack

B b2 = new B("jack"");

相关文章
|
2月前
|
Java 开发者
在 Java 中,一个类可以实现多个接口吗?
这是 Java 面向对象编程的一个重要特性,它提供了极大的灵活性和扩展性。
164 57
|
14天前
|
JSON Java Apache
Java基础-常用API-Object类
继承是面向对象编程的重要特性,允许从已有类派生新类。Java采用单继承机制,默认所有类继承自Object类。Object类提供了多个常用方法,如`clone()`用于复制对象,`equals()`判断对象是否相等,`hashCode()`计算哈希码,`toString()`返回对象的字符串表示,`wait()`、`notify()`和`notifyAll()`用于线程同步,`finalize()`在对象被垃圾回收时调用。掌握这些方法有助于更好地理解和使用Java中的对象行为。
|
14天前
|
缓存 算法 搜索推荐
Java中的算法优化与复杂度分析
在Java开发中,理解和优化算法的时间复杂度和空间复杂度是提升程序性能的关键。通过合理选择数据结构、避免重复计算、应用分治法等策略,可以显著提高算法效率。在实际开发中,应该根据具体需求和场景,选择合适的优化方法,从而编写出高效、可靠的代码。
25 6
|
2月前
|
监控 算法 Java
jvm-48-java 变更导致压测应用性能下降,如何分析定位原因?
【11月更文挑战第17天】当JVM相关变更导致压测应用性能下降时,可通过检查变更内容(如JVM参数、Java版本、代码变更)、收集性能监控数据(使用JVM监控工具、应用性能监控工具、系统资源监控)、分析垃圾回收情况(GC日志分析、内存泄漏检查)、分析线程和锁(线程状态分析、锁竞争分析)及分析代码执行路径(使用代码性能分析工具、代码审查)等步骤来定位和解决问题。
|
2月前
|
存储 缓存 安全
java 中操作字符串都有哪些类,它们之间有什么区别
Java中操作字符串的类主要有String、StringBuilder和StringBuffer。String是不可变的,每次操作都会生成新对象;StringBuilder和StringBuffer都是可变的,但StringBuilder是非线程安全的,而StringBuffer是线程安全的,因此性能略低。
66 8
|
2月前
|
Java 数据库连接 API
Spring 框架的介绍(Java EE 学习笔记02)
Spring是一个由Rod Johnson开发的轻量级Java SE/EE一站式开源框架,旨在解决Java EE应用中的多种问题。它采用非侵入式设计,通过IoC和AOP技术简化了Java应用的开发流程,降低了组件间的耦合度,支持事务管理和多种框架的无缝集成,极大提升了开发效率和代码质量。Spring 5引入了响应式编程等新特性,进一步增强了框架的功能性和灵活性。
55 0
|
2月前
|
Java Android开发
Eclipse 创建 Java 类
Eclipse 创建 Java 类
31 0
java202303java学习笔记第二十三天-初识内部类2
java202303java学习笔记第二十三天-初识内部类2
59 0
java202303java学习笔记第二十四天-静态内部类1
java202303java学习笔记第二十四天-静态内部类1
65 0
java202303java学习笔记第二十四天-静态内部类1
java202303java学习笔记第二十四天-静态内部类1
47 0