为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
Java入门第二季_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

Java入门第二季

IMOOC老齐 全栈工程师
难度入门
时长 4小时 0分
  • super关键字:

          在对象的内部使用,可以代表父类对象。

    1. 访问父类的属性

                 super.age

        2.访问父类的方法

                 super.eat()


    查看全部
  • final修饰类,则该类不允许被继承

    final修饰方法,则该方法不允许被覆盖(重写)

    final修饰属性

         则该类的属性不会进行隐式的初始化(类的初始化属性必须有值)

         或在构造方法中赋值(但只能选其一)

    final修饰变量,则该变量的值只能赋一次值,即变为常量

    查看全部
  • 两个同名类归属于不同包,同时导入两个包,这个时候如何实例化
    查看全部
  • 成员变量在整个类中,有初始值

    局部变量仅限于定义它的方法中,无初始值需要初始化

    同一个方法中只能有不同名的局部变量

    不同方法中可以有同名局部变量

    同一个类里,同名的局部变量优先于同名的成员变量


    查看全部
  • 方法内部类就是内部类定义在外部类的方法中,方法内部类只在该方法的内部可见,即只在该方法内可以使用。

    一定要注意哦:由于方法内部类不能在外部类的方法以外的地方使用,因此方法内部类不能使用访问控制符和 static 修饰符。


    查看全部
  • 静态内部类是 static 修饰的内部类,这种内部类的特点是:

    1、 静态内部类不能直接访问外部类的非静态成员,但可以通过 new 外部类().成员 的方式访问 

    2、 如果外部类的静态成员与内部类的成员名称相同,可通过“类名.静态成员”访问外部类的静态成员;如果外部类的静态成员与内部类的成员名称不相同,则可通过“成员名”直接调用外部类的静态成员

    3、 创建静态内部类的对象时,不需要外部类的对象,可以直接创建 内部类 对象名= new 内部类();


    查看全部
  • 无参构造方法的使用

    main():

    Telphone phone=new Telphone();

    class Telphone:

    public telphone(){

    System.out.println("Telphone构造方法执行了");

    查看全部
  • 接口与匿名内部类联合使用

    查看全部
    0 采集 收起 来源:Java 中的接口

    2019-02-13

  • 类是单继承的,但接口是多继承的。

    查看全部
    0 采集 收起 来源:Java 中的接口

    2019-02-13

  • java会给成员变量初始值

    不会给局部变量初始值

    查看全部
  •  两类变量同名时,局部变量具有更高优先级

    查看全部
  • 1.创建对象:

    类名 对象名=new 类名();

    Telphone phone=new Telphone();

    2.使用对象

    引用对象的属性:对象名.属性

    phone.screen=5;//给screen属性赋值5

    引用对象的方法:对象名.方法名()

    phone.sendMessage();//调用sendMessage()方法

    查看全部
  •  类的组成:属性和方法

    查看全部
  • final关键字的使用

    查看全部
  • 答答租车程序

    <Car类>

    package com.imooc;
    public class Car {
        //车辆编号
        private int number;
        //车辆名称
        private String name;
        //车辆租金
        private float price;
        
        public int getNumber() {
            return number;
        }
        public void setNumber(int number) {
            this.number = number;
        }
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public float getPrice() {
            return price;
        }
        public void setPrice(float price) {
            this.price = price;
        }
        @Override
        public String toString() {
            return "序号:" + number + '\t'+ "名称:" + name + '\t' + "价格:" + price + '\t';
        }
    }



    <PassengerCar类>

    package com.imooc;
    public class PassengerCar extends Car{
        //载客量
        private int passenger;
        public int getPassenger() {
            return passenger;
        }
        public void setPassenger(int passenger) {
            this.passenger = passenger;
        }
        
        public PassengerCar(int newNumber,String newName,float newPrice,int passenger) {
            super.setName(newName);
            super.setNumber(newNumber);
            super.setPrice(newPrice);
            this.setPassenger(passenger);
        }
        @Override
        public String toString() {
            return super.toString()+"载客量:" + passenger;
        }
    }



    <TrunkCar类>

    package com.imooc;
    public class TruckCar extends Car{
        //载货量
        private double capacity;
        public double getCapacity() {
            return capacity;
        }
        public void setCapacity(double capacity) {
            this.capacity = capacity;
        }
        public TruckCar(int newNumber,String newName,float newPrice,double capacity) {
            super.setName(newName);
            super.setNumber(newNumber);
            super.setPrice(newPrice);
            this.setCapacity(capacity);
        }
        @Override
        public String toString() {
            return super.toString()+"载货量:" + capacity;
        }
    }



    <PickCar类>

    package com.imooc;
    public class PickCar extends Car {
        //载货量
        private double capacity;
        public double getCapacity() {
            return capacity;
        }
        public void setCapacity(double capacity) {
            this.capacity = capacity;
        }
        //载客量
        private int passenger;
        public int getPassenger() {
            return passenger;
        }
        public void setPassenger(int passenger) {
            this.passenger = passenger;
        }
        
        public PickCar(int newNumber,String newName,float newPrice,int passenger,double capacity) {
            super.setName(newName);
            super.setNumber(newNumber);
            super.setPrice(newPrice);
            this.setCapacity(capacity);
            this.setPassenger(passenger);
        }
        @Override
        public String toString() {
            return super.toString()+"载货量:" + capacity + '\t' + "载客量:" + passenger;
        }
    }



    <Initial类>

    package com.imooc;
    import java.util.Scanner;
    public class Initial {
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            //创建汽车对象
            Car[] cars = new Car[5];
            cars[0] = new TruckCar(1,"重型卡车 ",460,4.5);
            cars[1] = new TruckCar(2,"轻型卡车 ",300,3.5);
            cars[2] = new PassengerCar(3,"大客车",500,45);
            cars[3] = new PassengerCar(4,"小客车",400,30);
            cars[4] = new PickCar(5,"皮卡",450,6,3.5);
            
            System.out.println("欢迎使用答答租车系统!");
            System.out.println("请问您是否需要租车?" + '\t' + "1.是" + '\t' + "2.否");
            Scanner s = new Scanner(System.in);
            int in = s.nextInt();
            //判断是否租车
            if(in == 1) {
                //输出汽车列表
                System.out.println("-------------------------------");
                System.out.println("您可租车的类型及其价目表:");
                for(Car c:cars) {
                    System.out.println(c.toString());
                }
                
                //客户选择车辆数目
                System.out.println("-------------------------------");
                System.out.println("请选择您租赁汽车的数量:");
                int num = s.nextInt();
                //客户选择车辆型号
                Car[] rentCars = new Car[num];
                for(int i = 1; i <= num ;i++) {
                    System.out.println("请选择您第" + i + "辆车型号(请输入车辆序号):");
                    int j = s.nextInt();
                    rentCars[i-1] = cars[j-1];
                }
                //客户选择租赁时间
                System.out.println("请输出您租赁时间:");
                int time = s.nextInt();
                
                //计算金额
                double totalprice = 0;
                for(int i = 0; i < num; i++) {
                    totalprice += rentCars[i].getPrice()*time;
                }
                //计算总载货量、总载客量
                double totalcapacity = 0;
                int totalpassenger = 0;
                for(int i = 0; i < num; i++) {
                    if(rentCars[i] instanceof PassengerCar) {
                        totalpassenger += ((PassengerCar)rentCars[i]).getPassenger();
                    }
                    if(rentCars[i] instanceof TruckCar) {
                        totalcapacity += ((TruckCar)rentCars[i]).getCapacity();
                    }
                    if(rentCars[i] instanceof PickCar) {
                        totalpassenger += ((PickCar)rentCars[i]).getPassenger();
                        totalcapacity += ((PickCar)rentCars[i]).getCapacity();
                    }
                }
                
                //输出租赁信息
                System.out.println("-------------------------------");
                System.out.println("租赁车辆列表如下:");
                for(Car c1:rentCars) {
                    System.out.println(c1.toString());
                }
                System.out.println("总载客量为:" + totalpassenger);
                System.out.println("总载货量为:" + totalcapacity);
                System.out.println("租赁时间为:" + time + "天");
                System.out.println("您共需支付:" + totalprice);
            }
        }
    }

    查看全部

举报

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

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