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

Java入门第二季

IMOOC老齐 全栈工程师
难度入门
时长 4小时 0分
  • 类:雷士模子,确定对象将会拥有的特征(属性)和行为(方法)

    类的特点:

    1. 类是对象的类型

    2. 具有相同属性和方法的一组对象的集合

    查看全部
  • 面向对象三大特性:封装、继承、多态

    封装就是隐藏属性,通过方法来得到属性。用private进行封装。如果想要在其他类中更改变量就要创建getter//setter方法

    public getScreen(){

    return screen;

    }

    public void setScreen(float newScreen ){

      screen=newScreen;

    }

    另一个包想要改变赋值可以phone2.setScreen(6.0f);

    查看全部
  • 方法内部类

    1. 定义在方法中的类

    2. 创建格式:MInner mi = new MInner();//注意括号

    查看全部
  • 静态内部类

    1. 内部访外部非静态成员-> new 外部类().成员

    2. 同名时,访问外部静态成员->类名.静态成员

    3. 创建时无需外部类对象,直接创

    查看全部
  • java中的包

    作用:

    定义:

    查看全部
  • 初始化块

    格式:{  }  | static {  }

    作用:

    1. 创建实例时自动自动执行,且只执行一次

    2. 静态初始化块只能初始化静态变量


    查看全部
  •  封装的实现步骤

    查看全部
  • 好吧,没看清,说下需要分析:

    1. 其实项目主要分两个步骤,选车和计费

    2. 那你就要先创建一个父类 Car,把类的基本信息先定义好,比如:车型、品牌、大小、颜色、载货量或载客量

    3. 那么为了方便你总不能一个款式创建一个类(或对象)吧,世界上那么多车,还不把人累死,所以这些属性你可以都定义成数组,这样虽方便,也限制了程序可以出现的错误,就给用户这么多选项让他们选

    4. 创建好 Car 类后,接下来就是创建一个选车的类 SelectCar,这个类里面只需要定义一个方法,那就是选车了,比如:你要什么车型、品牌、大小、颜色等等。。。

    5. 接下来选好车就是计算费用了,比如中型货车载货20吨的每天的费用是400块钱,那么乘上租期天数就算出了总价

    6. 最后可以单独创建一个 Running 类,用它来跑程序

    7. 让我想想还有什么。。。呃。。。好像没了。。。


    查看全部
  • public abstract class vehicle {

     public String name ;
     public int age;
     public int weight;
     public int population;
     public abstract void eat();
    }

    public class car extends vehicle{

     @Override
     public void eat() {
      // TODO Auto-generated method stub
      System.err.println("轿车可以拉人");
     }
    }

    public class freightcar extends vehicle {

     @Override
     public void eat() {
      // TODO Auto-generated method stub
      System.out.println("货车只能载货");
     }

    }

    public class Van extends vehicle {

     @Override
     public void eat() {
      // TODO Auto-generated method stub
      System.out.println("面包车既可以拉车也可以拉人");
     }
    }

    public class Inner {

     public static void main(String[] args) {
      // TODO Auto-generated method stub
      
      vehicle v1 = new car();
      v1.name="轿车,只能拉人";
      v1.age=150;
      v1.population=5;
      
      vehicle v2 = new Van();
      v2.name="面包车,也可载货";
      v2.age=200;
      v2.population=6;
      v2.weight=1;
      vehicle v3 = new freightcar();
      v3.name="货车只可载货";
      v3.age=200;
      v3.weight=3;
      Scanner  sa = new Scanner(System.in);
      while(true) {
       
      
      System.out.println("请选择适合车辆-");
      System.out.println("---------------");
      System.out.println("A:轿车"+","+"B:面包车"+","+"C:火车"+"注意请用ABC来选择(区分大小写)");
      String Sname=sa.nextLine();
      if(Sname.equals("A")) 
      {
       System.out.println("您选择的车辆是:");
       System.out.println("-----------------");
       System.out.println("选择车辆:"+v1.name);
       System.out.println("价钱:"+v1.age);
       System.out.println("承载人数:"+v1.population);
       System.out.println("-----------------");
       System.out.println("您已选择轿车成功,系统将自动跳出程序,请到前台交钱");
       return;
      }else if(Sname.equals("B")) 
      {
       System.out.println("您选择的车辆是:");
       System.out.println("-----------------");
       System.out.println("选择车辆:"+v2.name);
       System.out.println("价钱:"+v2.age);
       System.out.println("承载人数:"+v2.population);
       System.out.println("承载货物重量:"+v2.weight+"千克");
       System.out.println("-----------------");
       System.out.println("您已选择面包车成功,系统将自动跳出程序,请到前台交钱");
       return;
      }else if(Sname.equals("C")) 
      {
       System.out.println("您选择的车辆是:");
       System.out.println("-----------------");
       System.out.println("选择车辆:"+v3.name);
       System.out.println("价钱:"+v3.age);
       System.out.println("承载货物重量:"+v3.weight+"千克");
       System.out.println("-----------------");
       System.out.println("您已选择货车成功,系统将自动跳出程序,请到前台交钱");
       return;
      }else {
       System.out.println("您输入的信息有误,请用 A B C 来形容你选择的车辆,区分大小写");
      }
     }
     }

    }


    查看全部
  • 熟能生巧!

    查看全部
  • 静态方法使用:539137150001c96c08220542.jpg

    查看全部
  • 静态初始化块只在类加载时执行,且只会执行一次,静态代码块内只能给静态成员赋值

    程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次,所以当再次创建对象 hello2 时并未执行静态初始化块。

    查看全部
  • 1、 静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员。如:https://img1.sycdn.imooc.com//5bbf2bf8000197cf07030239.jpg

    如果希望在静态方法中调用非静态变量,可以通过创建类的对象,然后通过对象来访问非静态变量。如:https://img1.sycdn.imooc.com//5bbf2c2f0001342306150193.jpg

    2、 在普通成员方法中,则可以直接访问同类的非静态变量和静态变量,如下所示:https://img1.sycdn.imooc.com//5bbf2c56000147a605380184.jpg

    3、 静态方法中不能直接调用非静态方法,需要通过对象来访问非静态方法。如:

    https://img1.sycdn.imooc.com//5bbf2c640001c0ac04930347.jpg

    查看全部
  • 访问静态成员变量时 可以用类名.变量名

    或者先创建类的对象,用对象名.变量名进行访问

    同时用对象名.变量名可以进行重新赋值.

    查看全部
  • 通过无参或有参的构造方法均能创建对象

    当没有指定构造方法时,系统会自动添加一个无参构造方法。

    当有指定构造方法时,优先使用指定的构造方法。


    查看全部

举报

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

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