Java学习笔记——鸵鸟学习记(三)
8,对象的创建与销毁
a, 构造方法——在构造对象的时候同时传入相关的属性
用于构造对象的方法(当创建对象时调用的方法)
规则:1)方法名与类名相同
2)无返回值
package my; public class Student
{
public String id ;//学号
public String name ;//姓名
public boolean sex ;//性别
public String cellphone ;//手机号
//构造方法
public Student(String id, String name,boolean sex)
{
this.id = id;
this.name = name;
this.sex = sex;
}
} //主程序
package my; public class HelloWorld
{ public static void main(String[] args)
{
//创建对象的时候同时传入参数做初始化
Student s = new Student("201802","落落",true); } }
b,对象的销毁
当对象不在使用时,由垃圾回收机制GC自动回收。(Garbage Collect)
9.继承
a,继承关系:用于描述两个事物之间的一种关系(属性多的继承了属性少的)
自然界的例子:
树
{
树叶
主干
根
光合作用()
}
苹果树继承了树的所有共性,并添加了自己的特性
public class B extends A
{}
表示B继承了A(A:父类 B:子类)
A中已出现的特性,B中不用在书写
b,重写
如果父类的方法不满足要求,则可以在子类里重写一遍
c,构造方法的·继承
如果父类有多个构造方法,可以在子类里显示指定用那个构造方法
super();
super(a,b);//显示指定父类的构造方法(传入适当的参数,编辑器自行判断调用)
d,单根继承
Java语言中,一个类只能extends一个父类
ex:public class A extends B,C //错误写法!!!
- 继承链 Object 类是默认的所有类的父类
- toString() 方法
//toString() package my; public class Student
{
public String id ;//学号
public String name ;//姓名
public boolean sex ;//性别
public String cellphone ;//手机号
@Override
public String toString()
{
String s = "学号:" + id +"姓名:"+name;
if (sex)
{
s = s +"(男)";
}
else
{
s = s+"(女)";
}
return s; } }- 是一个显示效果,鼠标点到s上,就会出现自己想要呈现的保存模式
e,多态
是设计上的一个术语。在java中,多态指以下语法现象:
- 重载 Overload:方法允许重名
- 重写 Override:允许子类重写父类的方法
- 泛型(模板)
e-1
子类与父类的类型转化
- 子类转成父类顺理成章(隐式转换)
- ApplePie p1= new ApplePie();
- Pie p2 = p1;//类型转化:ApplePie -> Pie
- 父类转成子类型
- ApplePie p3 = (ApplePie)p2;//显示转换
- 当调用一个方法时,不是看引用的类型,而是看对象的实际类型。
file 指向的是一个MyVideoFile对象,因而调用的是子类的info()方法。
Object x = new MyVideoFile();
所有的对象都是Object。
10. 包
在Java里用于对Class进行分目录分层管理,实际上,包就是Windows目录结构。
a, 添加包
import + 类的全路径
改名:选中——Refactor——Rename——finish(包括属性,类名)
保存:ctrl + s
注释:ctrl + //
打开提示:Alt + /
格式化选中的代码:Ctrl+ Shift +F
Java学习笔记——鸵鸟学习记(三)的更多相关文章
- Java学习笔记——鸵鸟学习记(二)
---恢复内容开始--- 4. 数组对象 4.1 数组的创建 a, 数组对象 在Java语言中,数组对象可以表示一组数字. int[] arr = new int[30];(new可以表示为创建 ...
- Java学习笔记——鸵鸟学习记(一)
1. 变量 1.1 使用变量 a, 变量三要素:名字 值 类型 b, 变量命名 英文字母,数字,下划线,但不能数字开头 并不是英文单词,用拼音也可以 随便写也可以,但可读性差 区分大小写(Y与y是不同 ...
- Java虚拟机内存溢出异常--《深入理解Java虚拟机》学习笔记及个人理解(三)
Java虚拟机内存溢出异常--<深入理解Java虚拟机>学习笔记及个人理解(三) 书上P39 1. 堆内存溢出 不断地创建对象, 而且保证创建的这些对象不会被回收即可(让GC Root可达 ...
- java JDK8 学习笔记——助教学习博客汇总
java JDK8 学习笔记——助教学习博客汇总 1-6章 (by肖昱) Java学习笔记第一章——Java平台概论 Java学习笔记第二章——从JDK到IDEJava学习笔记第三章——基础语法Jav ...
- 20155234 2016-2017-2第十周《Java学习笔记》学习总结
20155234第十周<Java学习笔记>学习总结 教材学习内容总结 网络编程 在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,或者接收到指定 ...
- 20155234 2610-2017-2第九周《Java学习笔记》学习总结
20155234第九周<Java学习笔记>学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC(Ja ...
- #学习笔记#e2e学习使用(二)
前言: <#学习笔记#e2e学习使用(一)>主要记录了Vue项目的创建到e2e环境的搭建,以及期间遇到的各种问题和解决方法.本文建立在基础测试环境搭建完毕能正确运行的情况下,编写测试代码, ...
- #学习笔记#e2e学习使用(一)
本文仅限于记录本人学习的过程,以及怎么踩的坑,是如何解决的.逻辑肯定是混乱的,有用之处会抽出共通另行发帖. 最终目标:要运用于Vue项目中,进行功能测试甚至自动化测试. 一.e2e概念 理解:end ...
- mybatis学习笔记之学习目录(1)
mybatis学习笔记之学习结构(1) 学习结构: 1.mybatis开发方法 原始dao开发方法(程序需要编写dao接口和dao实现类) mybatis的mapper接口(相当于dao接口)代理开发 ...
随机推荐
- 使用Docker搭建LNMP开发环境
1.什么是Docker Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup,namespace,以及 AUFS 类的 Union FS 等技 ...
- 安利一个十分实用的IDEA插件--RestfulToolkit
官网链接:http://plugins.jetbrains.com/plugin/10292-restfultoolkit,英汉双语的帮助文档. 一套 RESTful 服务开发辅助工具集. 1.根据 ...
- CSS3中设置字体的抗锯齿或光滑度的属性
刚刚接触前端开发,对于-webkit-font-smoothing: antialiased; 这个属性不了解.上网查找了一些资料. 总结一下: -webkit-font-smoothing : ...
- Privoxy代理的使用
目录 1. Privoxy介绍 1.1 安装 1.2 配置 1.3 使用 1.4 其他配置 1.5 测试链接及查看配置 2. 相关信息 https://www.privoxy.org/ http:// ...
- freemarker demo
<!--freemarker--> <dependency> <groupId>org.springframework.boot</groupId> & ...
- github/gitee使用办法2
打开自己的仓库 git pull 把内容复制过去 git add . 添加所有 查看状态 git status 提交 git commit -m 'XXX' 最后push git push 如果内容本 ...
- Dotnetty 的心跳
只要你不按照实例中使用libuv,就不会有问题了. 主要区别在于 WorkerEventLoopGroup 和 MultithreadEventLoopGroup 之间.
- 19. Rootkit detectors (隐形工具包检测器 5个)
Sysinternals提供了许多小型Windows实用程序,对于低级别的Windows黑客攻击来说非常有用. 一些是免费的和/或包括源代码,而其他是专有的. 调查受访者最喜欢:ProcessExpl ...
- python 如何编写一个自己的包
python 如何编写一个自己的包 先写function 内容 package/wadepypk$ ls __init__.py f1.py f2.py f1.py def show(): print ...
- 使用python读取MS-SQL数据库
使用python读取MS-SQL中的数据,这里使用到模板pymssql. 因为不是python自带的模板,所以首先需要使用pip安装,对应命令:pip install pymssql 建立main.p ...