栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java学习——面向对象

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java学习——面向对象

第三章 面向对象(上)

3.1面向对象的概述

  • 面向过程

    算法分析,解决步骤,细化实现,----函数

  • 面向对象

    将实际问题中一切事物---对象,抽象出对象的操作,特征,调用对象的操作

    面向对象三大特征

  • 封装
  • 继承
  • 多态

    3.2 类和对象

    1.概念

  • 对象

    一切实际存在的事物

  • 对象的抽象,描述对象的共同特征

    类是对象的图纸,对象是类的实例

    2.类的定义和使用

  • 类的定义
  • 对象的创建
  • 对象的执行

    对象名.属性

    对象名.方法()

    3.3封装

  • 封装
  • 属性和方法封装起来---安全
  • 只能在类的内部操作,类外不能随意访问

    1.封装的步骤

  • 1-要封装的属性或方法,设置成私有的 

  • 外部无法修改--锁
  • private int age;//私有,私有的成员,只能在类的内部访问
  • 2-设置属性,设计一个方法对属性进行修改

  • 在修改的方法中,对属性取值进行限制

    //不确定的值,可能会变化的值=作为参数

    void setAge(int a){
    
    
    
        if(a>=18){
    
    
    
            age=a;//age值到底是多少,变化
    
    
    
        }else{
    
            System.out.println("年龄必须大于18");;
    
        }
    
    
    
    }

  • 3-类外调用这个方法对属性进行修改

    member1.setAge(19 );

    2.访问级别

    private

    3.成员变量和局部变量

    定义声明的位置不一样

  • 成员变量的位置是在类的{}
  • 局部变量的位置是在方法的里面:方法的参数()或方法的{}

    局部变量和成员变量同名

  • 方法内部,默认使用局部变量

    在局部两声明的那个方法的内部,默认使用局部变量

  • 要用成员变量,加限定this
    public class Student {
    
    
    
        //成员变量,属性成员
    
        private int age;//私有,私有的成员,只能在类的内部访问
    
        private String name ;//成员变量
    
        private String hobby;//成员变量
    
    
    
        // 参数字符串的值赋值给类的name属性
    
        public void setName(String name) {
    
            //方法的参数name和类的属性name同名
    
            //在方法中默认使用的是方法里定义的局部变量name
    
            //要使用属性name,需要给name加限定,this             
    
            this.name  =  name;               
    
        }
    
    }

    3.4方法的重载

    1.方法的而返回值和参数

    方法格式

    返回类型 方法名(方法的参数){//方法的操作语句}

  • 返回类型

    方法执行完成之后,是否会返回数据,

    如果有返回数据,返回类型就是返回的那个数据的类型;没有返回数据,返回类型是void类型

  • 参数

    不确定的值,可能会变化的值=作为参数

  • 例:

  • 调用方法,让同学帮我打水
  • water callStudengAWater(){
  • 走到饮水机前面;
  • 拿出纸杯;
  • 按下开水键,接水;
  • 把水拿回来,给谁(谁调用的方法,返回值就给谁);
  • returen water;
  • }
  • 调用方法,让同学帮我买一瓶矿泉水
  • 返回值 
  • 参数----不确定的值
  • kqwater callStudentBuyWater(int money){
  • //矿泉水价格不一定,5,2,1.5
  • 走到便利店;
  • 拿一瓶水;
  • 付款;
  • 把水拿回来,给调用的对象
  • return kqwater;
  • }

    2.get方法和set方法

    Eclipse自动添加属性的get和set方法。

    右键/Source/generate Getters and Setters

    3.方法的重载

    相同的操作,用同一个方法名字表示。

    由于方法名相同,JVM,区分到底要执行那个操作,执行不同的操作

    根据参数不同来区分,参数个数或者类型不同

    //无参数的setAge方法
    
    void setAge(){
    
        //默认加入社团的年龄
    
        age=18;
    
    }
    
    
    
    //带参数的setAge方法
    
    void setAge(int a){
    
        if(a>=18){
    
            age=a;//age值到底是多少,变化
    
        }else{
    
            System.out.println("年龄必须大于18");;
    
        }
    
    
    
    }

  • 转载请注明:文章转载自 www.mshxw.com
    本文地址:https://www.mshxw.com/it/770562.html
    我们一直用心在做
    关于我们 文章归档 网站地图 联系我们

    版权所有 (c)2021-2022 MSHXW.COM

    ICP备案号:晋ICP备2021003244-6号