为了账号安全,请及时绑定邮箱和手机立即绑定
  • 构造方法是定义在Java类中的一个用来初始化对象的方法

    http://img1.sycdn.imooc.com//5ecd08e00001430006870315.jpg


    查看全部
  • 在一个HelloWorld的类中定义了方法,在同一个包的另一个World类中,如果要调用HelloWorld类中的方法,创建对象名   HelloWorld 对象名=new HelloWorld。然后调用   对象名.方法名

    查看全部
  • 成员变量可以应用在定义它的类中和其它要调用这个变量的其它类中,局部变量只能应用在定义它的方法中。

    Java会给成员变量一个初始值,不会给局部变量赋予初始值。

    在一个方法中不允许有同名局部变量,在不同方法中可以有同名局部变量。

    两类变量同名时,局部变量具有更高的优先级。

    查看全部
  • 类是对象的汇总,是抽象的集合,对象是具体的事务,方法是对象的功能,属性是对象的自身属性,颜色,身高。

    查看全部
  • 父类

    package com.imooc;


    public class Car {

    public String name; //名称

    public double price; //租金

    private int pnum; //载客量

    private double huo; //货物容量

    public int getPnum() {

    return pnum;

    }

    public void setPnum(int pnum) {

    this.pnum = pnum;

    }

    public double getHuo() {

    return huo;

    }

    public void setHuo(double huo) {

    this.huo = huo;

    }

    public String getName() {

    return name;

    }

    public void setName(String name) {

    this.name = name;

    }

    public double getPrice() {

    return price;

    }

    public void setPrice(double price) {

    this.price = price;

    }

    }

    子类客车

    package com.imooc;


    public class PaCar extends Car {

    public PaCar(String name, double price, int pnum) {

    this.setName(name);;

    this.setPrice(price);

    this.setPnum(pnum); //载人数

    }


    @Override

    public String toString() {

    return this.getName() + "\t" + this.getPrice() + "元/天" + "\t载人:"+this.getPnum()+"人";

    }

    }

    子类货车

    package com.imooc;


    public class Trunk extends Car {

    public Trunk(String name, double price, double huo) {

    this.setName(name);;

    this.setPrice(price);

    this.setHuo(huo);///载货量

    }


    @Override

    public String toString() {

    return this.getName() + "\t" + this.getPrice() + "元/天" + "\t载货:"+ this.getHuo() +"吨";

    }

    }

    子类皮卡

    package com.imooc;


    public class PickUp extends Car {

    public PickUp(String name, double price, int pnum, double huo) {

    this.setName(name);;

    this.setPrice(price);

    this.setPnum(pnum); //载人数

    this.setHuo(huo); //载货数

    }


    @Override

    public String toString() {

    return this.getName() + "\t" + this.getPrice() + "元/天" + "\t载人:"+this.getPnum()+" 载货:"+this.getHuo()+"吨";

    }

    }

    测试类

    package com.imooc;

    import java.util.Scanner;


    public class Initial {


    public static void main(String[] args) {

    // TODO Auto-generated method stub

    Car[] cars = {

    new PaCar("奥迪A4", 500, 4), 

    new PaCar("马自达6", 400, 4), 

    new PickUp("皮卡雪6", 450, 4, 2), 

    new PaCar("金龙", 800, 20), 

    new Trunk("松花江", 400, 4), 

    new Trunk("依维河", 1000, 20)

    };

    System.out.println("欢迎使用答答租车系统:");

    System.out.println("您是否租车:1是 0否");

    Scanner scan = new Scanner(System.in);

    String input = scan.next();

    if(input.equals("1")) {

    System.out.println("您可租车的类型及其价目表:");

    System.out.println("序号\t汽车名称\t租金\t容量");

    for(int i =0; i<cars.length;i++) {

    System.out.println((i+1)+"\t"+cars[i]);

    }

    System.out.println("请输入您要租汽车的数量:");

    int num = scan.nextInt();

    Car[] newCars = new Car[num];

    for(int i=0;i<num;i++) {

    System.out.println("请输入第"+(i+1)+"辆车的序号");

    int j = scan.nextInt();

    newCars[i]= cars[j];

    }

    System.out.println("请输入租车天数:");

    int t = scan.nextInt();

    System.out.println("您的账单:");

    System.out.println("***可载人的车有:");

    int toltalperson =0;

    for(int i=0;i<num;i++) {

    if(newCars[i].getPnum()!=0) {

    System.out.print(newCars[i].getName()+"\t");

    toltalperson += newCars[i].getPnum();

    }

    }

    System.out.print("共载人:"+toltalperson+"人");

    System.out.print("\n");

    System.out.println("***载货的车有:");

    int toltalhuo =0;

    for(int i=0;i<num;i++) {

    if(newCars[i].getHuo()!=0) {

    System.out.print(newCars[i].getName()+"\t");

    toltalhuo += newCars[i].getHuo();

    }

    }

    System.out.print("共载货:"+toltalhuo+"吨");

    System.out.print("\n");

    double toltalmoney = 0;

    for(int i=0;i<num;i++) {

    toltalmoney += newCars[i].getPrice();

    }

    System.out.println("***租车总价格:"+ toltalmoney*t +"元");

    }

    }


    }


    查看全部
  • super,需要放在方法中。

    查看全部
  • 成员变量自己有一个初始值,局部变量没有初始值

    查看全部
  • 静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。53941e320001fdd507670575.jpg

    查看全部
  • 静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。


    查看全部
  • 普通成员方法可以直接访问静态变量

    查看全部
    1. 静态变量可以掉静态不能掉非静态,想调需要建立对象

    2. 普通方法可以直接访问静态变量和非静态

    3. 静态方法不能调用非静态方法

    查看全部
  • 方法的重写

    http://img1.sycdn.imooc.com//5ec397f70001495510060507.jpg

    查看全部
  • Java中的this关键字

    http://img1.sycdn.imooc.com//5ec3916f0001bc3309780413.jpg

    查看全部
  • Java访问修饰符

    http://img1.sycdn.imooc.com//5ec39065000135aa09660482.jpg

    查看全部

举报

0/150
提交
取消
课程须知
本课程是Java开发的基础,需要大家:掌握 Java 基本语法的使用。如果您是新手,建议先移步 《Java入门第一季》https://www.imooc.com/learn/85
老师告诉你能学到什么?
• 掌握 Java 编程思路 • 熟练运用面向对象程序设计思想

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!