zoukankan      html  css  js  c++  java
  • 面向对象

    调用类的普通方法

    class Lear{
    	public static void learn(){
    		System.out.println("we learn java and oracle");
    	}
    }
    
    public class Oij{
    	public static void main(String args[]){
    		//类  对象=new 类();
    		Lear l=new Lear(); //实例化
    		l.learn(); //对象调用方法
    	}
    }
    

      

    实例化类的语法(使用)

    类名 对象=new 类名();

    调用类的属性

    class Person{
    	String name;
    	int age;
    	public String say(){
    		return "姓名:"+name+",年龄:"+age;
    	}
    }
    
    public class Oij{
    	public static void main(String args[]){
    
    		Person per=null;
    		per=new Person();
    		//Person per=new Person(); //实例化
    
    		per.name="xxx"; //通过对象调用属性
    		per.age=18; //通过对象调用属性
    		String str=per.say(); //通过对象调用方法
    		System.out.println(str);
    	}
    }
    

      给出两片区域:

          分堆内存和栈内存

      堆内存:保存所有对象的属性

      栈内存:保存堆内存的地址

    引用传递

    class Person{
    	String name;
    	int age;
    	public String say(){
    		return "姓名:"+name+",年龄:"+age;
    	}
    }
    
    public class Oij{
    	public static void main(String args[]){
    		Person p1=new Person();
    		p1.name="王世龙";
    		p1.age=23;
    		Person p2=new Person();
    		p2.name="林依政";
    		p2.age=22;
    
    		p2=p1; //地址改变了
    
    		System.out.println(p1.say()); //姓名:王世龙,年龄:23
    		System.out.println(p2.say()); //姓名:林依政,年龄:23
    	}
    }
    

      

    没有栈内存指向的堆内存对象称之为垃圾。GC垃圾回收,不定期的清理

    封装(简单的封装)

    class Person{
    	private String name; //私有的
    	private int age; //私有的
    	public void setName(String n){
    		name=n;
    	}
    	public void setAge(int a){
    		age=a;
    	}
    	public String say(){
    		return "姓名:"+name+",年龄:"+age;
    	}
    }
    
    public class Oij{
    	public static void main(String args[]){
    		Person p1=new Person();
    		p1.setName("王世龙"); //p1.name="王世龙";
    		p1.setAge(23);
    		System.out.println(p1.say()); //姓名:王世龙,年龄:23
    	}
    }
    

      

    实例化语法:

    (1)类名 (2)对象名=(3)new (4)类名();

    (1) 我们可以定义自己类

    (2) 我们自己起的名字,一般首字母小写

    (3) 一旦new表示在内存开辟空间

    (4) Person(),构造方法

    构造方法一般用来做一些初始化的工作,他只在实例化的时候被调用一次。

    构造方法及其重载

    public Person(){ //构造方法
    		System.out.println("***");
    	}
    	public Person(String n,int a){ //构造方法重载
    		name=n;
    		age=a;
    	}
    
    Person p=null;
    		p=new Person("德玛西亚",25);
    		System.out.println(p.getName()+" "+p.getAge());
    

    匿名对象

    System.out.println(new Person("德玛西亚",25).getInfo());

    构造方法与普通方法的区别:

    构造方法只在实例化的时候被调用1次。

    普通方法可以被对象调用多次。

    简单Java

    (1) 首先类名必须有意义,首字母大写,BookPersonStudentJiaGe

    (2) 所有属性(变量),必须使用private封装。

    (3) 提供settergetter方法。setXxx(),getXxx()

    (4) 可以提供多个构造方法,但是至少保留一个无参构造。

    (5) 类中不允许使用输出语出,必须交给主类的主方法来处理。返回信息的方法,方法名暂时定位getInfo();

  • 相关阅读:
    20150922号HTML答案+css
    20150921css2
    20150917-html第二次课
    20150916-html第一次课
    Codeforces Round #527 (Div. 3) . F Tree with Maximum Cost
    Codeforces Round #501 (Div. 3) D. Walking Between Houses
    Educational Codeforces Round 33 (Rated for Div. 2) E. Counting Arrays
    “字节跳动-文远知行杯”广东工业大学第十四届程序设计竞赛 1010 Count
    Educational Codeforces Round 32 E. Maximum Subsequence
    Codeforces Round #447 (Div. 2) B. Ralph And His Magic Field 数学
  • 原文地址:https://www.cnblogs.com/zyn0216/p/7501072.html
Copyright © 2011-2022 走看看