Day16 基础复习及面向对象01

Day16 基础复习及面向对象01

Scanner,Random工具

package oop;

//使用工具第一步导包
import java.util.Scanner;


public class oop001 {
    public static void main(String[] args) {
        //获取工具
        Scanner tool = new Scanner(System.in);

        System.out.println("输入年龄");
        //使用工具
        int age = tool.nextInt();


        //输入姓名
        System.out.println("输入姓名");
        String name = tool.next();  //接收键盘录入的下一个数据

        //操作数据
        System.out.println("年龄为" + age);
        System.out.println("姓名为" + name);
    }
}
package oop;

//使用工具第一步导包
import java.util.Random;


public class oop001 {
    public static void main(String[] args) {
        Random random = new Random();

        int num = random.nextInt();   //随机生成一个整数,在所有整数Int选一个

        //随机输入考试成绩
        int num2 = random.nextInt(101);//在0-100中选一个  [0,101)  =[0,100]

        //随机生成及格的成绩  >=60
        int num3 = random.nextInt(100 -60 + 1)+60;


        System.out.println(num3);
    }
}

面向对象大纲

  1. 类与对象
  2. 内存分析
  3. 面向对象经典案例
  4. 构造器
  5. this关键字
  6. 成员方法的使用与应用
  7. static关键字

面向对象解释

  • 面向对象是一种思想
  • 面向对象适合复杂的、适合多人协作的
  • 宏观上我们使用面向对象,细节上我们使用面向过程
  • 项目经理—面向对象,打工的—面向过程
  • 可以将复杂的问题简单化
  • 我们首先思考的是“怎么设计这个事物”,而不是考虑按步骤做
  • 其次应该思考“应该让谁来实现” 谁指的就是对象,对象如何实现我们不关注,只关注对象本身

类与对象

对象---->实例(具体存在的)

先有类才能创造对象

工厂中造车 图纸(类)------> 车(对象)

类中包含 定义功能——成员方法 属性——变量

类可以看做是个模板,对象就是实例

类:class 对象:object,instance(实例

某个类的对象某个类的实例是一个意思

类中定义了这一类对象所应具有的静态动态属性

JDK中提供了很多类供使用,也可以定义自己的类


自定义类

定义类(类的组成)

  • 属性(也叫成员变量)(特征、特点) field
  • 方法(也叫成员方法)(功能、行为) method
  • 构造方法 construtor
  • 其他:代码块、静态代码块、内部类

属性(成员变量)

  • 属性用于定义该类或该类对象包含的数据或者说静态特征。属性作用范围是整个类体
  • 在定义成员变量是可以对其初始化,如果不对其初始化,java使用默认的值对其初始化

定义格式:

[修饰符] 属性类型 属性名 = [默认值];

[修饰符] 可以省略:可以是:public protected private static final

属性类型:可以是任何类型,基本类型和引用类型

属性名:合法标识符即可,首字母小写,驼峰命名规则

public class Person{
    String name = "张三"}

方法

  • 方法用于定义该类或该类实例的行为特征和功能实现。方法是类和对象行为特征的抽象。方法很类似与面向过程中的函数。面向对象中,整个程序的基本单位是类,方法是从属于类个对象的

方法定义格式:

[修饰符] 方法返回值类型 方法名(形参列表){

​ //n条语句

}

public class Person{
    //成员变量
    String name;
    
    //成员方法
    public void study(){
        System.out.println("牛批");
    }  
}

使用

创建对象

类名 对象名 = new 类名()

Person p1 = new Person()

调用类的属性和方法

对象名.成员变量

对象名.成员方法

p1.name = “李四”;

p1.study();

public class oop001 {
    public static void main(String[] args) {
        class phone {
            String colour;

            public void call() {
                System.out.println("牛皮");
            }
        }
        phone p1 = new phone();
        p1.call();
    }
}


//在同一文件调用类的时候,创建类为什么不需要写修饰符?

成员变量与局部变量的区别

  • 声明的位置不同 成员变量:类中或方法外 局部变量:方法中
  • 作用的范围不停 成员变量:当前类的方法 局部变量:当前方法(不同的方法中及时有同名的局部变量,没有关系,互不影响,建议相同)
  • 内存存放的位置:成员变量:栈内存中 局部变量:堆内存中
  • 成员变量有默认值;局部变量没有默认值

类与类之间的关系

  • 6种关系:依赖、关系、聚合、耦合、组合、继承、实现,他们之间的耦合度依次增加

继承

public class Person{
    int age;
    String name;
    void move(){}
}

public class student extends Person{
    void study(){}
}

实现

  • 实现指的是一个class类实现interface接口(可以是多个),实现是类与接口之间最常见的关系,用implements实现
  • 在Java中一个孩子只能有一个亲爸(继承),但是能有若干个干爹(接口)
  • 一般定义接口的时候都是功能的集合,类和接口之间只能是类实现接口

。。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值