java概念基础笔记整理

1、构造方法没有类型,有类型的不是不叫构造方法。

2、一个类的的成员变量可以是java允许的任何数据类型,一个类可以把某个对象作为自己的一个成员变量,如果用这样的类创建对象,那么该对象中就会其他对象,也就是说该类的对象将其他的对象作为自己的组成部分。(Has-A)若是,一个对象组合了另一个对象,则可以委托被组合的对象调用其方法。通过组合对象调用方法,也叫做黑盒复用。另一个就是当前对象可以随时更换包含的对象,这种现象叫做弱耦合现象。

package com.DiErZhang;

public class Example10 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        //
        Cricle cricle=new Cricle(100);
        System.out.println("main fouctuon"+cricle);
        System.out.println("main function"+cricle.getRadius());
        Circular circular=new Circular(cricle,20);
        System.out.println("circular function "+circular.bottom);
        System.out.println("circular function"+circular.getBottomRadius());
        System.out.println("circular"+circular.getVolme());
        double r=999;
        System.out.println("rewirte r"+r);
        circular.setBootomRadius(r);
        circular.getBottomRadius();
    }
}
class Cricle{
    double radius,area;
    Cricle(double r){
        radius=r;
    }
    void setRadius(double r){
        radius=r;
    }
    double getRadius(){
        return radius;
    }
    double getarea(){
        area=3.1415*radius*radius;
        return area;
    }
}
class Circular{
    Cricle bottom;
    double height;
    Circular(Cricle c, double h){
        bottom=c;
        height=h;
    }
    double  getVolme(){
        return bottom.getarea()*height/3.0;
    }
    double getBottomRadius(){
        return bottom.getRadius();
    }
    public void setBootomRadius(double r){
        bottom.setRadius(r);
    }
}
2、说一下实例变量和类变量的关联关系

    一个类可以创建多个对象,分派给不同对象的的实例变量占有不同的存储空间,改变一个对象的实例变量不会改变其他对象的实例变量。对象共享类变量。除此之外,类变量不仅可以通过对象来访问还可以通过类名来访问。

   当类的字节码文件加载到内存中时,类的实例方法不会被分派入口地址,只有该类创建对象之后,类中的实例方法才会分配入口地址,也就是说类创建的任何对象都可以调用实例方法。当再次创建对象向时候,不再分配入口地址,也就是说方法的入口地址被所有对象共享。当所有对象都不存在的时候,方法的入口地址才会被取消。

3、另一个问题就是this关键字的使用细节问题

   this可以出现在实例方法和构造方法中,但是不可以出现在类方法中。this关键字出现在构造方法中时,表示使用该构造方法所创建的对象。

 

关键字this出现在实例方法中的时候表示 this代表该方法当前的对象。如果源文件使用import语句引入另一的包中的类,并使用该类创建一个对象,那么该对象能够访问自己的public修饰的方法。

原文地址:https://www.cnblogs.com/xinxianquan/p/9315441.html