Java 中的一些知识点
Java 中的一些知识点
与C++相关【了解的不是很多】
在Java程序中:一个方法以
;结尾,并且修饰符列表中有native关键字代表:底层调用C++写的dll程序【dll动态连接库文件】
toString方法
来源:
toString方法源自
java.lang.Object中的方法因为所有的类默认继承Object所有,几乎所有类都有toString方法
toString方法实现
// 以下是官方原文
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
// 返回:类名字@哈希加密的内存地址
}
toString方法的作用是什么?
作用:将“java对象”转换“字符串形式”
toString方法的特性
System.out.println(引用.toString());
等价
System.out.println(引用);
toString方法的价值:一般用于重写后用在开发时,数据的打印查看
示例:
public class ToStringTest { public static void main(String[] args) { MyDate date1 = new MyDate();
MyDate date2 = new MyDate(2022, 1, 18); // toString()方法已经重新
System.out.println(date1.toString());
System.out.println(date1); System.out.println(date2.toString());
System.out.println(date2);
} } class MyDate { private int year;
private int month;
private int day; public MyDate() {
this(1970,1,1);
} public MyDate(int year, int month, int day) { this.year = year;
this.month = month;
this.day = day;
} public String toString() {
return this.year + "年" + this.month + "月" + this.day + "日";
} }
super
super 是一个关键字
super和this对比学习
this:
this能够出现在实例方法和构造方法中
this的语法是:
this.、this()this不能使用在静态方法中
this. 大部分情况都可以省略
this. 什么时候不可以省略?
public void setName(string name){
this.name = name;
}
this() 只能出现在构造方法第一行,通过当前的构造方法去调用“本类”中的其他构造方法
super:
super能够出现在实例方法和构造方法中
super的语法是:
this.、this()super不能使用在静态方法中
super. 大部分情况都可以省略
super. 什么时候不可以省略?
如果父类和子类中有重名属性,你需要访问父类则必须使用
super.super() 只能出现在构造方法第一行,通过当前的构造方法去调用“父类”中的其他构造方法;目的:构建子类对象的时候,先初始化父类特征
super()
表示通过子类的构造方法调用父类的构造方法
重要结论:
当一个构造方第一行,没有this()或super()的话,会默认存在一个super()【无参】
一个类如果手动提供一个构造方法,那么无参数构造系统将不再提供
注意:this()与super()不共存
super(实参列表)初始化当前对象的父类型特性
总结
this: 本类
super: 当前类的父类
可以使用super访问或调用在当前类中被覆盖的方法和属性【注意静态问题,super是相对与this】
可以粗浅的理解:super相当于当前类的父类的this【并不准确,下面测试】
// 测试
public class Test{
public static void main(String[] args){
Test test_1 = new Test();
test_1.doSome();
}
// 实例方法
public void doSome(){
// Test@2f89e2d1
System.out.println(this);
// println输出 "引用" 默认调用toString()方法
System.out.println(super); // 报错
}
}
通过这个测试得出的结论:
- super 不是引用,不保存内存地址,也不指向任何对象
- super 只是代表当前对象内部的那一块父类型的特征
Java 中的一些知识点的更多相关文章
- java中的小知识点
1.数据类型的相关知识点 1.1.java内置封装类的转换 java中内置的封装类Byte.Integer.Float.Double和Long都可以转换成double类型的数值:因为这些封装好的类中都 ...
- 面试中关于Java中涉及到知识点(转)
本篇文章会对面试中常遇到的Java技术点进行全面深入的总结,帮助我们在面试中更加得心应手,不参加面试的同学也能够借此机会梳理一下自己的知识体系,进行查漏补缺. 1. Java中的原始数据类型都有哪些, ...
- Java中继承相关知识点
继承 1.继承概述 继承是面向对象的三大特征之一.可以使得子类具有父类的属性和方法,还可以在子类中重新定义,追加属性和方法 1.1 继承的格式 格式:public class 子类名 extends ...
- Java中关键的知识点
JVM,运行是内存模型 Java 反射 Java 注解 函数式接口 lambda表达式/流式计算 动态代理
- Java中多态相关知识点
多态 1.多态概述 同一个对象在不同时刻表现出的不同形态 多态的前提和体现: 有继承/实现关系 有方法重写 有父类引用指向子类对象(Animal a = new Cat();) 2.多态中的成员访问特 ...
- Java中StringBuilder相关知识点
StringBuilder 1.StringBuilder概述 如果对字符串进行拼接操作,每次拼接都会构建一个新的String对象,既耗时又浪费空间,而且这种操作还不可避免.我们可以通过StringB ...
- 【Java基础】Java中你必须知道的知识点
目录 Java中面向对象的基础知识 1. 什么是面向对象 2. 三大基本特征和五项基本原则 3. Java的平台无关性 4. 值传递和引用传递 5. 方法重载和重写 6. 基本数据类型 7. 包装类 ...
- Java中容易遗漏的小知识点( 一 )(为了和小白一样马上要考试的兄弟准备的,希望小白和大家高过不挂)
笔者csdn博客同文地址:https://blog.csdn.net/weixin_45791445/article/details/106597515 我是小康小白,一个平平无奇的Java小白.热爱 ...
- 关于Java中的String类知识点小总结
Java中的String类知识点 前言 在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串. 如何创建字符串 最简单的方式 String str = "he ...
- Java语言中的这些知识点有没有用过,工作中有没有入过这些坑?
在Java语言中,有一些相对生僻的知识,平时用的机会可能不是很多,但如果不了解不掌握这些知识点的话,也可能会掉入陷阱之中,今天我们就来初步梳理一下: 1. goto是java语言中的关键字. &quo ...
随机推荐
- C#老码农的职业生涯
开头白 大家好,我是tibos,19年10月1号由深圳回武汉的码农,目前入职武汉福禄网络,最近刷到的年终总结也比较多,赶在这最后一天,我也来凑个热闹 心路历程 -> 菜鸟入江湖 13年开启码农的 ...
- 卷爆短剧出海:五大关键,由AIGC重构
短剧高温下,谈谈AIGC的助攻路线. 短剧,一个席卷全球的高温赛道. 以往只是踏着霸总题材,如今,内容循着精品化.IP化的自然发展风向,给内容.制作.平台等产业全链都带来新机,也让短剧消费走向文化深处 ...
- sqlerver 报错5120 无法为该请求检索数据 系统找不到指定路径
背景: 数据库mdf文件所在盘符F盘被删除了,也就是文件不存在了,sqlserver管理器打开就报错5120,并且正常路径的数据库也不显示出来. 要让正常的数据库显示出来,就需要删除掉已经没有的数据库 ...
- 深入理解Vue 3:计算属性与侦听器的艺术
title: 深入理解Vue 3:计算属性与侦听器的艺术 date: 2024/5/30 下午3:53:47 updated: 2024/5/30 下午3:53:47 categories: 前端开发 ...
- 阅读LXH《FFMPEG+SDL的视频播放器》总结
一.原文地址 https://blog.csdn.net/leixiaohua1020/article/details/46889389 在此向雷霄骅致敬!!! 二.视频播放器实现思路 1)视频播放器 ...
- NOIP模拟98(多校30)
T1 构造字符串 解题思路 不算特别难的题,但是有一点细节... 首先需要并茶几缩一下点,然后判断一下是否合法,由于我们需要字典序最小的,因此我们应当保证一个联通块中标号较小的点为根节点. 那么对于所 ...
- NOIP模拟75
前言 先吐槽一下出题人,T2 牛马数据连棵树都不是.. T3 描述不清楚.. T1 如何优雅的送分 解题思路 我考场上还真以为是个送分题,然而... 莫比乌斯反演... 对于一个数字 n 有 \(2^ ...
- 【VMware vSphere】使用vSphere Lifecycle Manager(vLCM)管理独立主机和集群的生命周期。
vSphere Lifecycle Manager(vLCM)是 vSphere 7 中引入的一项新功能,它提供了一种集中式.自动化和简单性的方式来管理和升级 vSphere 基础架构组件(如vCen ...
- umask永久修改用户创建文件权限
Linux里永久设置用户创建文件权限的配置文件是/etc/profile.可以在该文件中添加umask命令来设置默认权限.具体操作步骤如下: 打开/etc/profile文件:sudo vi /etc ...
- python-使用pyecharts绘制各省份985学校数量图
1.环境 代码运行环境:python3.7 相关的库:pyecharts 1.7.1 代码编辑器:visual studio code 2.目的 通过使用pyecharts库,来绘制全国各省985高校 ...