Java类和对象的学习

一、学习目的

面向对象编程思想是力图使在计算机语言中对事物的描述与现实世界中该事物的本来面目尽可能一致。所以在面向对象程序设计中,类和对象是面向对象程序设计方法中最核心的概念。类的概念是为了让程序设计语言更清楚第描述日常生活中的事物。类是对某一事物的描述,是抽象的,概念上的定义;而对象是实际存在的属于该类事物的具体的个体。

二、学习内容

一,类

1,类是由数据成员和函数成员封装而成的,其中的数据成员表示类的属性,函数表示类的行为,也就是说来描述了对象的属性和行为;
2,类时抽象的,一个概念, 不实际存在的 描述一类实物 ,不能实现具体的事;
3,定义一个类

      【修饰符】 class 类名(首字母大写){
         【修饰符】 数据类型 成员变量名称   //声明成员变量
         【修饰符】 返回值的数据类型 方法名(参数){
                           // 语句
                              return [表达式]
                }                 
     }
二、对象

1,实际存在的 某一类的实际化
2, 对象需要用new创建出来
3,可以完成具体的事情 有内存空间
4, 同一个类可以创建多个对象 ,每个对象的内存空间都是独立的(除了都是由同一个类创建出来的 对象之间没有任何关系)
5,封装: 把私有的东西封装起来, 不让外部使用需要外部使用 就暴露出来
访问权限 public private protected

  • public :公共的 内部外部都可以使用

  • private:私有 只能自己使用 外部和子类都不能访问

  • protected:受保护的 ,外部(同一个包里面)可以访问
    6,创建Person类的一个对象
    使用‘.’访问成员变量
    对象一旦创建,对应变量有初值,默认初值char ”; int long short 0; float double 0.0; boolean false; 引用型数据类型 :对象类型的变量 = null;

    Person xw = new Person();
    Person zs = new Person();
    
    //给这个对象对应的属性赋值
    xw.name = "xw";
    xw.age = 18;
    xw.score = 100f;
    System.out.println(xw.name);
    

7,方法的调用
*调用谁(哪个对象)的方法 :
*类外依靠对象调用

    Random random = new Random();    //用Random类创建了一个random对象
    int num = random.nextInt();       //用random调用nextInt方法

类里面直接调用

  //方法的定义 public static final private
   public void test(){
    System.out.println("没有返回值,没有参数的方法");
 }
   public void test1(){
    //在自己的类里面可以直接调用自己的方法  也可以用this调用
    //在外必须依靠对象调用方法
    test();
}

8,定以一个参数个数未知的方法

 public int test5(int ... counts){
    //可变参数  相当于数组
    int sum = 0;
    for(int i = 0;i 

调用这个函数 传递参数用到了匿名对象

  int result = xw.test5(new int[]{1,2,3,4,5});//匿名对象 作为一个参数传递
    System.out.println(result);

9,输出数组三种的方法

class Array{
public static void main(String[] args){
    Random random = new Random();
    //尽量不要扩大变量的作用域
    int[] count = new int[10];
    //数组输出方式1
    for(int i = 0; i 

三、项目实战

Java实现猜数字游戏

class GuessNumber{
public static void main(String[] args){
    int[] originArray = new int[4];
    int[] guessNumber = new int[4];//保存用户猜测的数字

    //产生随机数
    Random random = new Random();
    for(int i = 0; i 

四、学习感悟

Java是完全面向对象的语言,在编写程序时和C语言的面向过程有很大区别,所以一定要快速适应这个转变。在学习过程中一定要动手做,试着多写代码,而不是仅仅听课。很多东西和体会必须自己动手才能真正属于自己。