Java学习日记——面向对象、成员/构造方法、关键字 20190301

LEARNING

1、面向对象(对现实世界的对象进行建模)
①对象:静态部分(属性)+动态部分(行为)
》》》对象是类中的一个实例,用new操作符创建对象

public class TransferProperty{
        int i = 47;
         public void call(){      //构造方法
             System.out.println("调用call()方法");
             for(i=0;i<3;i++){
               System.out.print(i+“ ”);
               if(i==2)  System.out.println("\n);
             }
        public TransferProperty(){ }
        public static void main(String[] args){
          TransferProperty s1 = new TransferProperty();   //创建对象同时自动调用构造方法中的代码
          TransferProperty s2 = new TransferProperty(); 
          s2.i = 60;
          System.out.println(“s1调用变量i的结果:”+t1.i++);
          s1.call();
          System.out.println(“s2调用变量i的结果:”+t2.i);
          s2.call(); 
          }
    }

②类:封装对象(类的实例)属性+行为——方法的载体
③封装——用户无法轻易操作此数据结构,提高可维护性
④继承——类之间的关联关系之一,保留父类属性并增添新东西
⑤多态——将父类对象应用于子类特征,多态依赖抽象类+接口(抽象方法集合)实现
注:在不同商家购买的螺丝帽和螺丝钉却可以轻易组合,说明两家都遵循一种原则,该原则即接口。

2、成员方法

权限修饰符 返回值类型 方法名(参数类型 参数名){
        …//方法体
        return 返回值;  //无返回值用void
        }

3、构造方法:构造方法无返回值

public book(){
       ...//构造方法体
       }

4、权限修饰符
pravite:则该成员变量只能在本类中使用
public :则该成员变量可以在子类和其他包的类中使用
protected:则该成员变量可以在本类、子类中使用

5、关键字this:调用成员变量和方法,还可作为方法的返回值
使用this代表本类对象的引用

6、静态变量、常量、方法——static
可调用:类名.静态类成员
若希望成员变量不被改变,可用static
静态方法中不可使用this,不可直接调用非静态方法

7、equals( )与“ = = ”
前者比较两者内容,后者比较两者地址

8、对象销毁
①Java垃圾回收机制:对象引用超过其作用范围、对象赋值是null
System.gc():强制启动垃圾回收站
②Object类的finalize()方法

PRATICING

1.Java程序:编写一个类,定义一个修饰权限为private的成员变量,并定义两个成员方法,一个实现为此成员变量赋值,另一个获取此成员变量的值,保证其他类继承该类可获取该成员变量的值。

package Pratices;

public class Pratice15 {
    private int a=0;
    public void method1(int a) {
		this.a = a;
	}
    public Pratice15() {}
	public static void main(String[] args) {
		// TODO 自动生成的方法存根
	Pratice15 s1 = new Pratice15();
	s1.method1(2);
    s1.method2();
	}
	public void method2() {
		System.out.println("值为:"+a);
	}
}

package Pratices;

public class Pratice15_1 extends Pratice15 {
	public static void main(String[] args) {
		// TODO 自动生成的方法存根
      Pratice15 b = new Pratice15();
      b.method1(3);
      System.out.println(b.method2());
	}

}

2.Java程序:编写一个矩形类,将长与宽作为矩形类的属性,在构造方法中将长、宽初始化,定义一个成员方法求此矩形的面积。

package Pratices;
public class Pratice16 {
	static double Long = 2;
	static double Width = 3;
	public Pratice16() {}
	public double Perimeter(double a,double b) {
		return a*b;
	}
	public static void main(String[] args) {
		// TODO 自动生成的方法存根
    Pratice16 C = new Pratice16() ;
    System.out.println(C.Perimeter(Long,Width));
	}
}

3.Java程序:根据运行参数的个数决定循环打印变量i值的次数。

package Pratices;
public class Pratice17 {
	public static void main(String[] args) {      //运行参数保存在args[]中
		// TODO 自动生成的方法存根
      if(args.length==0) {
    	  System.out.println("无");  
      return;      }
      for(int i=0;i<args.length;i++)
    	  System.out.println("运行参数决定变量i的个数是:"+i);
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值