J-7 面向对象

形式参数
匿名对象
封装
构造方法
成员方法
成员变量
基本类的标准代码写法

五、形式参数

  • 基本类型:形式参数的改变不影响实际参数

  • 引用类型:形式参数的改变直接影响实际参数

  • 方法的形式参数是类名时:

      //形式参数是基本类型
      class Demo {
      	public int sum(int a,int b) {
      		return a + b;
      	}
      }
      
      //形式参数是引用类型
      class Student {
      	public void show() {
      		System.out.println("引用类型");
      	}
      }
      
      class StudentDemo {
      	//如果你看到了一个方法的形式参数是一个类(引用类型),这里需要的是该类的对象。
      	public void method(Student s) { 
      		s.show();
      	}
      }
      
      class ArgsTest {
      	public static void main(String[] args) {
      		//形式参数是基本类型的调用
      		Demo d = new Demo();
      		int result = d.sum(10,20);
      		System.out.println("result:"+result);
      		System.out.println("--------------");
      		
      		//形式参数是引用类型的调用
      		//需求:调用StudentDemo类中的method()方法
      		StudentDemo sd = new StudentDemo();
      		//创建学生对象,对对象进行操作。
      		Student s = new Student();
      		sd.method(s); //把s的地址给到了这里
      		}
      	}
    

六、匿名对象

  • 没有名字的对象

  • 应用场景:
    ①调用方法,仅仅调用一次。优点:匿名对象调用完毕就是垃圾,可以被回收。
    ②作为实际参数传递。

      class Student{
      	public void show(){
      		System.out.println("我是student");
      	}
      }
      class StudentDemo{
      	public void method(Student s){
      		System.out.println("我是studentDemo");
      	}
      }
      
      class NoNameDemo{
      	public static void main(String[] args){
      		//带名字的调用
      		Student s = new Student();
      		s.show();
      		//匿名对象
      		new Student().show();
      		//new Student().show();//这里是新创建的对象。
      		
      		
      		StudentDemo sd = new StudentDemo();
      		sd.method(new Student());//作为实际参数传递
      		//升级版
      		new StudentDemo().method(new.Student());
      	}
      }
    

七、封装

概述

  • 封装:隐藏对象的属性和实现细节,仅对外提供公共访问方式。
  • 优点:①隐藏实现细节;②提高代码的复用性;③提高安全性。
  • 原则:不需要将对外提供的内容都隐藏起来;把属性隐藏。
  • 测试类只创建对象,调用方法。

private关键字

  • 权限修饰符。
  • 修饰成员(成员变量,成员方法)。只能在本类中访问。
  • 应用:把成员变量用private修饰,提供对应的set、get方法。

this关键字

  • 当前类的对象名。
  • 方法被哪个对象调用,this就代表哪个对象。
  • 使用情况:
    ①解决局部变量隐藏成员变量;
    ②其他

八、构造方法

  • 作用:给对象的数据进行初始化。

  • 格式:
    方法名与类名相同。
    没有返回值类型。
    没有具体的返回值。

      class Student{
      	public Student(){
      		System.out.println("这是构造方法");
      	}
      }
    
  • 注意事项:
    ①如果我们没有给出构造函数,系统将自动提供一个无参构造函数。
    ②如果我们给出构造函数,系统将不再提供默认的无参构造函数。
    如果我们还想使用无参构造方法,就必须自己给出。建议永远自己给出。

九、成员方法

  • 分类:
    ①根据返回值:void类型,非void类型
    ②根据形式参数:空参方法,非空参方法。

十、成员变量:

  • 如果这个变量是用来描述这个类的信息时,该变量应定义为成员变量。
  • 变量的定义:范围越小越好,用完及时回收。
  • 初始化:
    默认初始化
    显示初始化
    构造初始化

十一、基本类的标准代码写法

  • 给成员变量赋值:
    ① setXxx()灵活性高
    ②构造方法。
  • 输出成员变量值:
    ①getXxx()灵活性高
    ②通过调用show()方法。
posted @ 2015-08-25 17:14  小懒66  阅读(273)  评论(0编辑  收藏  举报