java中的默认值是什么意思?java中在一个类中如何设定默认值
各位老铁们好,相信很多人对java中的默认值是什么意思都不是特别的了解,因此呢,今天就来为大家分享下关于java中的默认值是什么意思以及java中在一个类中如何设定默认值的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!
java中在一个类中如何设定默认值
public class A{bai
private int a,b;
public void apple(int a=1,int b=2)
{
return 0;
}
}
方法apple中的参数a的默认值zhi是1,b的默认值是2。
扩展资料:
Java还包括一个类的扩展集合,分别组成各种程序包(Package),用户可以在自己的程序中使用。例如,Java提供产生图形用户接口部件的类(java.awt包),这里awt是抽象窗口工具集(abstract windowing toolkit)的缩写,处理输入输出的类(java.io包)和支持网络功能的类(java.net包)。
参考资料来源:百度百科-Java
java中静态变量的默认值是0
1、首先局部变量在类体中,一般是最先定义的,而局部变量是在方法或各种其他语句中,
2、而方法可以同时调用成员变量和局部变量。这里以方法F()为例。
3、如果方法中的局部变量的名字和成员变量的名字相同,那么方法就会隐藏成员变量,在方法进行操作时采用局部变量。
4、而如果想使用隐藏的成员变量值,那么只需添加this.成员变量即可实现其值调用。
5、局部变量没有默认值。如果在使用局部变量时不为其赋值,那么在编译的时候就会出现错误,这是因为方法在使用局部变量时不会为其赋初值,而相反,成员变量如果没有赋值,系统会为其自动设定默认值0。
Java代码中前面带@是什么意思
这是一个Annotation
Annotation接口的实现类: Documented, Inherited, Retention, Target都是用来定义自己定义的Annotation类的。
1.注解(Annotation)类,以@interface修饰,不能显示(explicit)extends或implements任何类
如:
java代码
public@interface DefineAnnotation{
}
这种没有任何属性的Annotation类,也叫标识Annotation
2.定义属性
java代码
//属性必须加个小括号
public String value();
//有默认值的属性
public String value() default"aaa";
完整定义如下:
java代码
//注解Annotation类不能显示(explicit)extends或implements任何类
//不定义任何属性就叫maket annotation
public@interface DefineAnnotation{
//定义一个属性,有属性的话,必须赋值,除非有默认default
public String value() default"aaa";
}
3.使用Annotation,有默认值的可以不用传参数,也可以传递参数。没有默认值的,必须传递参数。
如:
java代码
public class TestAnnotation{
//@DefineAnnotation有默认值的第一种使用方式
//@DefineAnnotation()有默认值的第二种使用方式
@DefineAnnotation("ttitfly")
public void say(){
System.out.println("say hello");
}
public static void main(String[] args){
TestAnnotation ta= new TestAnnotation();
ta.say();
}
}
4. Retention(保存)
所有的Annotation类都实现了Annotation接口
@Retention本身就是个Annotation(注解)类
它的值是个enum枚举类型的RetentionPolicy,该枚举类型RetentionPolicy有三个值RUNTIME(会被JVM加载,并可以通过反射来获得到Annotation类的信息),CLASS(不会被JVM加载),Source
@Retention的值标识自己定义的Annotation(注解)类是属于哪种保存策略,将来哪个类如果使用了这个自定义的注解类,将会使用这种保存策略
如:
java代码
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
//所有的Annotation类都实现了Annotation接口
//@Retention本身就是个Annotation(注解)类
//它的值是个enum枚举类型的RetentionPolicy,该枚举类型RetentionPolicy有三个值RUNTIME(会被JVM加载,并可以通过反射来获得到Annotation类的信息),CLASS(不会被JVM加载),Source
//@Retention的值标识自己定义的Annotation(注解)类是属于哪种保存策略,将来哪个类如果使用了这个自定义的注解类,将会使用这种保存策略
@Retention(RetentionPolicy.RUNTIME)
public@interface MyAnnotation{
String hello() default"ttitfly";
String world();
}
java代码
//使用自己定义的Annotation类
public class MyTest{
//一个方法可以有多个注解类
@Deprecated
@MyAnnotation(hello="china",world="earth")
public void say(){
System.out.println("say hello");
}
}
java代码
import java.lang.annotation.Annotation;
import java.lang.reflect.Method;
在java中String...是什么意思
1、首先String不属于8种基本数据类型,String是一个对象。因为对象的默认值是null,所以String的默认值也是null;但它又是一种特殊的对象,有其它对象没有的一些特性。
2、关于String的其他知识点
(1)String类是final类,也即意味着String类不能被继承,并且它的成员方法都默认为final方法。在Java中,被final修饰的类是不允许被继承的,并且该类中的成员方法都默认为final方法。
(2)String对象一旦被创建就是固定不变的了,对String对象的任何改变都不影响到原对象,相关的任何change操作都会生成新的对象。
(3)每当我们创建字符串常量时,JVM会首先检查字符串常量池,如果该字符串已经存在常量池中,那么就直接返回常量池中的实例引用。如果字符串不存在常量池中,就会实例化该字符串并且将其放到常量池中。由于String字符串的不可变性我们可以十分肯定常量池中一定不存在两个相同的字符串
(4)String c= new String("chenssy");
/**
*采用字面值的方式赋值*/publicvoidtest1(){
Stringstr1="aaa";
Stringstr2="aaa";
System.out.println("===========test1============");
System.out.println(str1==str2);//true可以看出str1跟str2是指向同一个对象}
如果你还想了解更多这方面的信息,记得收藏关注本站。