Java 中的构造方法

时间:2021-10-02 00:13:19

首先创建一个Transport类,定义好类的属性和方法,并且写好构造方法,先看下无参数的构造方法:

public class Transport {
//名字
public String name;
//运输类型
public String type; public void todo()
{
System.out.println("交通工具可以载人载物");
}
public Transport()
{
System.out.println("无参数的构造方法执行了");
}
}

接着实例化Transport类:

public static void main(String[] args)
{
Transport Plane = new Transport(); //输出 无参数的构造方法执行了
}

再来看下有参数的构造方法:

public Transport(String myName, String myType)
{
name = myName;
type = myType;
System.out.println("有参数的构造方法执行了,参数:"+name+","+type);
}

实例化输出:

public static void main(String[] args)
{
Transport Plane = new Transport("飞机", "空运"); //有参数的构造方法执行了,参数:飞机,空运
}

如果父类是带参数的构造方法子类也必须和父类一样使用带参数的构造方法并使用super()方法调用父类的构造函数,子类继承父类并调用父类属性和方法:

public class Plane extends Transport {public void todo()
{
System.out.println(name+"是最快的交通工具");
}
public Plane(String myName, String myType)
{
super(myName,myType);
}
public void test()
{
super.todo();
}
}

实例化输出:

public static void main(String[] args)
{
Plane plane = new Plane("飞机", "空运"); //这里执行的是super(myName,myType),输出 有参数的构造方法执行了,参数:飞机,空运
plane.todo(); //飞机是最快的交通工具
plane.test(); //交通工具可以载人载物
}
//输出结果为:

有参数的构造方法执行了,参数:飞机,空运
子类实例化参数:飞机空运300
飞机是最快的交通工具
交通工具可以载人载物

总之,子类如果有自己的构造方法,它的参数不能少于父类的参数,但是可以添加子类自己新的构造参数,如:

public Plane(String myName, String myType, int speed)
{
super(myName,myType);
System.out.println("子类实例化参数:"+myName+myType+speed);
}
Plane plane = new Plane("飞机", "空运", 300);

有参数的构造方法执行了,参数:飞机,空运
子类实例化参数:飞机空运300

Java 中的构造方法的更多相关文章

  1. Java中的构造方法总结

    Java中的构造方法总结 时间: 2013-11-05 08:49 来源: 未知 作者: 站长部落 点击: 1752 次   今天写代码突然发现Java的构造方法也有不少说法呢,闲来无事,总结一下: ...

  2. Java学习笔记十六:Java中的构造方法

    Java中的构造方法 1.使用new+构造方法 创建一个新的对象: 2.构造方法是定义在Java类中的一个用来初始化对象的方法: 3.构造方法与类同名且没有返回值: 4.语法格式: public 构造 ...

  3. Java中的构造方法

    什么是构造方法:每一个类中至少有一个构造方法,它用于创建该类对象,这个和OC中的init有异曲同工之妙. 构造方法的格式:A:方法名与类名相同  B:没有返回值类型,没有void C:没有具体的返回值 ...

  4. Java面试 - 在Java中, 既然构造方法是一个方法,那么为什么不使用void 定义呢?

    Java程序编译器是根据代码结构来进行编译处理的,执行的时候也是根据代码结构来处理的. 如果在构造方法上使用void,那么此结构就会与普通方法的结构相同,这样编译器会认为此方法是一个 普通方法,而普通 ...

  5. java中的构造方法与其作用

    什么是构造方法呢? 方法名和类名相同 没有返回值类型,连void都不能写 没有具体的返回值 构造方法分为无参构造方法与有参构造方法. 先来看一下最简单的无参构造方法: Student.java pac ...

  6. java中的构造方法(2013-05-05-bd 写的日志迁移

    特点: 1.方法名和类名相同 2.没有返回值 3.在创建一个类的新对象时,系统会自动的调用该类的构造方法完成对新对象的初始化 一个类中可以定义多个不同构造方法: 如果程序员没有定义构造方法,系统能够会 ...

  7. 134、Java中的构造方法和构造块

    01.代码如下: package TIANPAN; class Book { public Book() { // 构造方法 System.out.println("[A]Book类的构造方 ...

  8. Java中的构造方法「注意事项」

    构造方法是专门用来创建对象的方法,当我们通过关键字new来创建对象时,其实就是调用构造方法. 语法: public 类名称(参数类型 参数名称){ 方法体 } 注意事项: 构造方法的名称必须和所在的类 ...

  9. java中在构造方法中修改线程名,修改失败原因(现已修改成功)

    package com.cx.Threads; public class HelloThread extends Thread{ @Override public void run() { for ( ...

随机推荐

  1. Mac 安装配置rz、sz

    在Iterm2中修改配置: 安装lrzsz brew install lrzsz 下载iterm2-zmodem cd /usr/local/bin sudo wget https://raw.git ...

  2. Shell Script (2) - global.sh

    cd web/ui npm run e2e-dev -- -i 1 "should be able to add function with argument to a ingredient ...

  3. OpenGL阴影,Shadow Mapping(附源程序)

    实验平台:Win7,VS2010 先上结果截图(文章最后下载程序,解压后直接运行BIN文件夹下的EXE程序): 本文描述图形学的两个最常用的阴影技术之一,Shadow Mapping方法(另一种是Sh ...

  4. java编程思想恶心的enum状态机示例

    下面是一个包装输入的类 package test; import java.util.Random; public enum Input { NICKEL(5) , DIME(10) , QUARTE ...

  5. 编译FreePascal和Lazarus

    一,准备目录假设我们准备将整个FreePascal环境安装到D盘的fpc目录下,那么我们需要创建以下几个目录:d:\fpc_svn\bind:\laz_svn二,准备环境1,安装SVN客户端Torto ...

  6. uboot移植前奏

    Tiny4412开发板硬件版本为:       底板:  Tiny4412/Super4412SDK 1506        核心板:Tiny4412 - 1412 1.下载u-boot源代码,建立u ...

  7. 逆向与Bof基础

    一逆向及Bof基础实践说明 实践目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户输入的字符串. 该程序同时包含 ...

  8. java 小数转换成二进制

    32位单精度二进制 = [1个符号位] [8个阶码位] [23个尾数位] 64位单精度二进制 = [1个符号位] [11个阶码位] [52个尾数位] 小数 = [正负符号位]  [整数部分] . [小 ...

  9. TZOJ 4712 Double Shortest Paths(最小费用最大流)

    描述 Alice and Bob are walking in an ancient maze with a lot of caves and one-way passages connecting ...

  10. Filter的连接过程《转》

    原文地址:https://yq.aliyun.com/articles/48113 7.Filter的连接过程 DirectShow提供了多方法来连接Filter,如IFilterGraph::Con ...