Java 中的构造方法

首先创建一个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
时间: 2024-11-13 09:52:53

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

Java中的构造方法总结

Java中的构造方法总结 时间: 2013-11-05 08:49 来源: 未知 作者: 站长部落 点击: 1752 次 今天写代码突然发现Java的构造方法也有不少说法呢,闲来无事,总结一下: 构造方法和实例方法的区别: 一.主要的区别在于三个方面:修饰符.返回值.命名 1.和实例方法一样,构造器可以有任何访问的修饰符,public.private.protected或者没有修饰符   ,都可以对构造方法进行修饰.不同于实例方法的是构造方法不能有任何非访问性质的修饰符修饰,例如static.f

java中的构造方法和普通方法

1.普通方法: 定义:简单的说方法就是完成特定功能的代码块. 普通方法定义格式: 修饰符 返回值类型 方法名 (参数类型 参数名1,参数类型 参数名2,.........) { 函数体: return 返回值: } 返回值类型用于限定返回值的数据类型. 普通方法分为:有明确返回值的方法和没有明确返回值的方法. (1)有明确返回值的方法的调用则有(单独调用(无意义).输出调用.赋值调用(推荐)) public static int sum (int a , int b) {     int c =

java中关于构造方法的理解

在类实例化的过程中自动执行的方法叫做构造方法,它不需要你手动调用.构造方法可以在类实例化的过程中做一些初始化的工作. 构造方法的名称必须与类的名称相同,并且没有返回值. 每个类都有构造方法.如果没有显式地为类定义构造方法,Java编译器将会为该类提供一个默认的构造方法 下面是关于构造方法的使用示例: 1 public class Dog{ 2 2 String name; 3 3 int age; 4 4 //构造函数 5 5 Dog(String name1, int age1){ 6 6 n

java中的构造方法

1.new + 构造方法  创建一个类 2.构造方法是定义在java类中的一个初始化对象的方法 构造方法与类名相同,无返回值. 3.构造方法的格式 public 构造方法名( ){ // 初始化代码 } 4.当我们创建对象的时候,其实执行的是构造方法,构造方法可以有参,可以无参. 5.当没有指定的构造方法时,系统会自动添加无参的构造方法. 6.当有指定的构造方法,无论是有参还是无参,都不会自动添加无参的构造方法. 7.构造方法的重载:方法名相同,但参数不同的多个方法,调用时会根据不同的参数选择相

java中的构造方法,this、super的用法

1.构造方法 定义:与类同名没有返回值的方法称为构造方法: public class test1 {private String name;private int age;public test1(){} } 上面的test1()是默认构造方法,即使没有定义java虚拟机在运行的时候也会自动生成, 当然如果定义了重载的构造方法便不会自动生成: 构造方法的作用有两点1.通过构造方法建立一个对象:2.通过构造方法可以快速的赋初值: public class Main {public static v

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

01.代码如下: package TIANPAN; class Book { public Book() { // 构造方法 System.out.println("[A]Book类的构造方法"); } { // 将代码块写在类里,所以为构造块 System.out.println("[B]Book类中的构造块"); } } /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { pub

java基础_ 构造方法注意的地方

java中的构造方法是用来初始化一个对象的,并为为实例变量赋予合适的初始值.因此构造方法不需要返回类型. 构造方法必须满足以下语法规则: (1)方法名必须与类名相同: (2)不要声明返回类型: (3)不能被static.final.synchronized.abstract和native修饰: (4)构造方法不能被子类继承,所以用final和abstract修饰没有意义. 构造方法的创建如下示例: public class Demo { private int x; public Demo()

浅析 Java 中的继承和重写

Java 中的构造方法不能被继承. Java 中 static 修饰的方法可以被继承,但不能被子类重写. Java 中 final 修饰方法不允许被子类重写,但是可以被子类继承,final 不能修饰构造方法. Java 中子类可以继承父类的私有成员,但是不能(直接)访问,私有方法不可以重写. 原文地址:https://www.cnblogs.com/hglibin/p/11247597.html

java中构造方法和方法全面解析

java中构造方法和方法全面解析 我相信大多说人都对构造方法.方法不陌生,而且很了解,但我也相信有很多像我这样的没有一个很好很清晰很全面的认识,今天就把它整理如下,希望能给大家带来点方便与帮助,也希望大家多多讨论.          构造方法和方法的区别: 构造方法要与类名相同,无返回类型,在类初始化的时候调用.      方法最好与类名不同,对象调用,静态方法可用类名.方法(). 构造器和方法在下面三个方面区别:修饰符,返回值,命名. 1.和方法一样,构造器可以有任何访问的修饰: public