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学习笔记——鸵鸟学习记(三)的更多相关文章

  1. Java学习笔记——鸵鸟学习记(二)

    ---恢复内容开始--- 4. 数组对象 4.1 数组的创建 a, 数组对象 在Java语言中,数组对象可以表示一组数字. int[]  arr  =  new int[30];(new可以表示为创建 ...

  2. Java学习笔记——鸵鸟学习记(一)

    1. 变量 1.1 使用变量 a, 变量三要素:名字 值 类型 b, 变量命名 英文字母,数字,下划线,但不能数字开头 并不是英文单词,用拼音也可以 随便写也可以,但可读性差 区分大小写(Y与y是不同 ...

  3. Java虚拟机内存溢出异常--《深入理解Java虚拟机》学习笔记及个人理解(三)

    Java虚拟机内存溢出异常--<深入理解Java虚拟机>学习笔记及个人理解(三) 书上P39 1. 堆内存溢出 不断地创建对象, 而且保证创建的这些对象不会被回收即可(让GC Root可达 ...

  4. java JDK8 学习笔记——助教学习博客汇总

    java JDK8 学习笔记——助教学习博客汇总 1-6章 (by肖昱) Java学习笔记第一章——Java平台概论 Java学习笔记第二章——从JDK到IDEJava学习笔记第三章——基础语法Jav ...

  5. 20155234 2016-2017-2第十周《Java学习笔记》学习总结

    20155234第十周<Java学习笔记>学习总结 教材学习内容总结 网络编程 在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,或者接收到指定 ...

  6. 20155234 2610-2017-2第九周《Java学习笔记》学习总结

    20155234第九周<Java学习笔记>学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC(Ja ...

  7. #学习笔记#e2e学习使用(二)

    前言: <#学习笔记#e2e学习使用(一)>主要记录了Vue项目的创建到e2e环境的搭建,以及期间遇到的各种问题和解决方法.本文建立在基础测试环境搭建完毕能正确运行的情况下,编写测试代码, ...

  8. #学习笔记#e2e学习使用(一)

    本文仅限于记录本人学习的过程,以及怎么踩的坑,是如何解决的.逻辑肯定是混乱的,有用之处会抽出共通另行发帖. 最终目标:要运用于Vue项目中,进行功能测试甚至自动化测试. 一.e2e概念 理解:end ...

  9. mybatis学习笔记之学习目录(1)

    mybatis学习笔记之学习结构(1) 学习结构: 1.mybatis开发方法 原始dao开发方法(程序需要编写dao接口和dao实现类) mybatis的mapper接口(相当于dao接口)代理开发 ...

随机推荐

  1. 使用Docker搭建LNMP开发环境

    1.什么是Docker Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup,namespace,以及 AUFS 类的 Union FS 等技 ...

  2. 安利一个十分实用的IDEA插件--RestfulToolkit

    官网链接:http://plugins.jetbrains.com/plugin/10292-restfultoolkit,英汉双语的帮助文档. 一套 RESTful 服务开发辅助工具集. 1.根据 ...

  3. CSS3中设置字体的抗锯齿或光滑度的属性

    刚刚接触前端开发,对于-webkit-font-smoothing: antialiased; 这个属性不了解.上网查找了一些资料. 总结一下: -webkit-font-smoothing  :  ...

  4. Privoxy代理的使用

    目录 1. Privoxy介绍 1.1 安装 1.2 配置 1.3 使用 1.4 其他配置 1.5 测试链接及查看配置 2. 相关信息 https://www.privoxy.org/ http:// ...

  5. freemarker demo

    <!--freemarker--> <dependency> <groupId>org.springframework.boot</groupId> & ...

  6. github/gitee使用办法2

    打开自己的仓库 git pull 把内容复制过去 git add . 添加所有 查看状态 git status 提交 git commit -m 'XXX' 最后push git push 如果内容本 ...

  7. Dotnetty 的心跳

    只要你不按照实例中使用libuv,就不会有问题了. 主要区别在于 WorkerEventLoopGroup 和 MultithreadEventLoopGroup 之间.

  8. 19. Rootkit detectors (隐形工具包检测器 5个)

    Sysinternals提供了许多小型Windows实用程序,对于低级别的Windows黑客攻击来说非常有用. 一些是免费的和/或包括源代码,而其他是专有的. 调查受访者最喜欢:ProcessExpl ...

  9. python 如何编写一个自己的包

    python 如何编写一个自己的包 先写function 内容 package/wadepypk$ ls __init__.py f1.py f2.py f1.py def show(): print ...

  10. 使用python读取MS-SQL数据库

    使用python读取MS-SQL中的数据,这里使用到模板pymssql. 因为不是python自带的模板,所以首先需要使用pip安装,对应命令:pip install pymssql 建立main.p ...