JavaSE8基础 接口的成员变量只能是静态的常量

os :windows7 x64
    jdk:jdk-8u131-windows-x64
    ide:Eclipse Oxygen Release (4.7.0)
    
    
代码:

//接口的成员变量只能是静态的常量.
interface PersonTrain{

	//默认修饰符public static final
	public static final int num = 1;//推荐写法,帮人帮己

	public int num2 = 2;
	public final int num3 = 3;
	int num4 = 4;
}

//具体类实现一个接口
class Javaer implements PersonTrain {

}

class Demo {
	public static void main(String[] agrs) {
		Javaer j0 = new Javaer();
		System.out.println(j0.num4);
	}
}

结果:



Java优秀,值得学习。
学习资源:itcast视频库。如果您有公开的资源,可以分享给我的话,用您的资源学习也可以。
博文是观看视频后,融入思考写成的。博文好,是老师讲得好。博文坏,是 给最苦 没认真。
如果您觉得博文有可以改进的地方,留言即可。

时间: 2024-10-10 03:18:42

JavaSE8基础 接口的成员变量只能是静态的常量的相关文章

张超超OC基础回顾02_成员变量(属性),局部变量,全局变量的区别

成员变量: 写在类声明的大括号中的变量, 我们称之为 成员变量(属性, 实例变量) 成员变量只能通过对象来访问 注意: 成员变量不能离开类, 离开类之后就不是成员变量 成员变量不能在定义的同时进行初始化 存储: 堆(当前对象对应的堆的存储空间中) 存储在堆中的数据, 不会被自动释放, 只能程序员手动释放 @interface Person : NSObject { int _age; NSString *_name; } @end  全局变量: 写在函数和大括号外部的变量, 我们称之为全局变量

接口作为成员变量——实现类和匿名内部类和匿名对象

声明定义的接口: 主体类: 其中接口作为成员变量,在这个主体类的成员方法中调用了这个接口的抽象方法,会自动找到这个这个接口实现类的覆盖重写的方法,避免多个实现类不同的覆盖重写,所以如果用实现类类实现的话都是直接传参该实现类就行: 其中,用实现类的时候,入参为接口的时候直接传入它的实现类,jvm会自动实现向上转型,继承和实现都有向上转型,原理可以看作一样:但是java是单继承.多实现的: 实现类只使用了一次,可以使用匿名内部类: 匿名内部类创建出来的对象也只调用了一个方法,可以使用匿名内部类的匿名

成员变量和局部变量,静态变量的区别

成员变量和局部变量,静态变量的区别 1.成员变量和局部变量的区别 1)在类中的位置不同 成员变量:在类中方法外 局部变量:在方法定义中或者方法声明上 2)在内存中的位置不同 成员变量:在堆内存(成员变量属于对象,对象进堆内存) 局部变量:在栈内存(局部变量属于方法,方法进栈内存) 3)生命周期不同 成员变量:随着对象的创建而存在,随着对象的消失而消失 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失 4)初始化值不同 成员变量:有默认初始化值 局部变量:没有默认初始化值,必须定义,赋值,

java接口中成员变量和方法的默认修饰符(转)

Java的interface中,成员变量的默认修饰符为:public static final 所以我们在interface中定义成员变量的时候,可以 1:public static final String name = "张三"; 2:String name = "张三"; 以上两种都可以,老司机一般都是第二种.既然是静态最终的变量,也就意味着在外面访问的时候不能修改这个成员变量的值.所以在接口中定义成员变量的,一般都是常量.不会修改的.如果要进行修改的话,定义

java基础 javaBean对象成员变量默认值及数组默认值

public class StudentTest { private int id; private String name; int[] arr; public int[] getArr() { return arr; } public void setArr(int[] arr) { this.arr = arr; } public int getId() { return id; } public void setId(int id) { this.id = id; } public St

JavaSE8基础 接口的成员方法只能是抽象方法,并且是public类型的

os :windows7 x64    jdk:jdk-8u131-windows-x64    ide:Eclipse Oxygen Release (4.7.0)        代码: //接口的成员方法只能是抽象方法,并且是public类型的 interface PersonTrain{ //标准的 public abstract void say0(); //public abstract 前缀,你写还是不写,我都在这里 void say1(); abstract void say2()

java类同时引用父类和接口的成员变量,需要指明是父类的还是接口的

code: package com.qhong; public class Main extends B implements A{ public static void main(String[] args) throws Exception { new Main().action();; } public void action(){ System.out.println(super.x); System.out.println(A.x); //System.out.print(x); }

JavaSE8基础 成员内部类 在成员位置定义一个内部类

os :windows7 x64    jdk:jdk-8u131-windows-x64    ide:Eclipse Oxygen Release (4.7.0)        代码: //内部类 就是在一个类的内部在定义一个类 //外部类 class TestOuter { //在成员位置定义一个内部类,即成员内部类 private class TestInner { public void showInner() { System.out.println("hello world&quo

JavaSE8基础 接口作为函数的参数

os :windows7 x64    jdk:jdk-8u131-windows-x64    ide:Eclipse Oxygen Release (4.7.0)        代码: interface Say { public abstract void sayHello(); } class Javaer implements Say{ public void sayHello() { System.out.println("Java Hello"); } } class D