7月21日Objiect的常用类本人为新手正在学习Java中把每天学的东西晚上都会在博客记录希望大神可以指点 不足在此谢过。

来源:互联网 发布:蚁群算法的应用 编辑:程序博客网 时间:2024/05/18 12:04

Objiect类中的常用方法、

objiect类是所有类的根类,他定义了所有对象都具备的功能。

内部类

一个源文件可以有多各类,但是public修饰的类之多有一个,而且Java源文件的名称必须和public修饰的类的名称一致

内部类是指在类的里面定义的类

内部类可以用任意字符来修饰

内部类创建实例:

package com.inner;
/*一个java源文件可以有任意多个类,但是public修饰的类
至多有一个,而且java源文件名称必须和public修饰的类
的名称一致*/
class Base1{}


class Sub extends Base1{}


public class Outer {
//内部类是指在类的里面定义的类
//内部类可以用任意的访问权限修饰符来修饰
private int a = 1;
static int b = 2;
class Inner{
//只希望类本身可以调用的类,不希望其他类访问,
//可以把这个类定义为内部类
int a = 2;
public void show(){
int a = 3;
System.out.println(a + "-->"
+ this.a + "-->" + Outer.this.a);
}
}


private void product(){
//局部内部类
class A{}
}

static class SecondInner{
//静态内部类不能访问非静态的属性
public void show(){
System.out.println(b);
}
}

public static void test(){
Inner inner = new Outer().new Inner();
inner.show();
}

public static void main(String[] args) {
test();
}
}package com.inner;


import com.inner.Outer.Inner;
import com.inner.Outer.SecondInner;


public class Test {


public static void main(String[] args) {
Base1 base = new Base1();
//内部类的实例严格依赖于外部类的实例
Inner inner = new Outer().new Inner();
/*Outer outer =new Outer();
Inner inner = outer.new Inner();*/
//创建静态内部类
SecondInner secondInner = new SecondInner();
}


}

package com.inner;


//匿名内部类是只使用一次的类,父类一般是抽象类和接口


abstract class Base{
abstract void show();
}


interface Father{
//接口没有构造器
void say();
}




public class AnonymousDemo {
public static void main(String[] args) {
// 创建一个匿名内部类
new Base() {
@Override
void show() {
//只使用一次的匿名内部类
}
};
new Father() {
@Override
public void say() {
//匿名内部类的创建需要借助一个抽象类或者
//接口作为父类
}
};


}


}

静态内部类可以包含静态成员,也可以包含非静态成员,所以所以静态内部类不能访问外部类的实例成员只能访问外部类的类成员;

静态内部类对象寄存在外部类里,非静态内部类的对象寄存在外部类实例里

局部内部类 

如果把一个内部类定义在方法中,这就是局部内部类,仅仅在方法中有效

局部内部类不能在外部类以外的地方使用,局部内部类也不能用访问控制符和static修饰

匿名内部类

匿名内部类的创建需要借助一个抽象类或者接口作为父类、

手动执行枚举类

实现枚举类要实现构造器私有化

所有的属性尽量用public static final 来修饰

package com.enumdemo;


//枚举指类的对象是确定的
public class Season {
//自定义枚举类需要把构造器私有化
String name;
private Season(String name){
this.name = name;
}
//所有的属性尽量用public、static、final来修饰
public static final Season SPRING = new Season("春天");
public static final Season SUMMER = new Season("夏天");
public static final Season FALL = new Season("秋天");
public static final Season WINTER = new Season("冬天");
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
package com.enumdemo;


public enum MySeason {
    //第一行必须写此枚举类的所有对象
SPRING("春天"),SUMMER("夏天"),FALL("秋天"),WINTER("冬天");
String name;
private MySeason(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}

}

package com.enumdemo;


public class Test {


/**
* @param args
*/
public static void main(String[] args) {
// Season spring = Season.SPRING;
/*MySeason chun = MySeason.SPRING;
System.out.println(chun.getName());*/
/*MySeason[] seasons = MySeason.values();
for (int i = 0; i < seasons.length; i++) {
System.out.println(seasons[i].getName());
}*/
/*MySeason chun = MySeason.SPRING;
MySeason xia = Enum.valueOf(MySeason.class, "SUMMER");
System.out.println(xia.getName());*/
}


}



0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 从公务员调入事业单位的怎么办 电车被城管扣了怎么办 超变战陀发射器绳坏了怎么办 家里人总打击我怎么办干啥都要骂 欧陆风云4破产后怎么办 车被别人喷了漆怎么办 龙分期绑银行卡维护钱还不上怎么办 去维和要是伤了怎么办 头盔镜片刮花了怎么办 小牛u1钥匙丢了怎么办 非牛顿流体干了怎么办 刺激战场0信誉分怎么办 假如非牛顿干了怎么办? 退出id后照片了怎么办 小麦收割机麦糠有籽粒怎么办 在家带娃没钱花怎么办 看3d电影近视的怎么办 摩托车电瓶没电了怎么办 踏板摩托车电瓶没电了怎么办 摩托车离合油没了怎么办 论文数据计算错误该怎么办 脚被擦破皮了痛怎么办 脚撞到了很疼怎么办 腿不小心磕青了怎么办 木制椅子腿断了怎么办 实木椅子腿断了怎么办 铁质椅子腿断了怎么办 大套摩托车查车怎么办 摩托车本扣12分怎么办 蓝牙耳机上面的软套掉了怎么办 工作不想干了怎么办啊 浴室门玻璃坏了怎么办 电梯顶层安全安全距离不合格怎么办 制冰机有些孔不出水怎么办 制冰机排水孔堵住了怎么办 点我达装备抽查怎么办 空军常服大檐帽有一点变形怎么办 一般纳税人没有进项发票怎么办 汽车购买发票丢了怎么办 购买房子的发票丢了怎么办 购买的二手房发票丢失怎么办