java可变对象是什么意思?java可变的成员变量什么意思
大家好,今天来为大家解答java可变对象是什么意思这个问题的一些问题点,包括java可变的成员变量什么意思也一样很多人还不知道,因此呢,今天就来为大家分析分析,现在让我们一起来看看吧!如果解决了您的问题,还望您关注下本站哦,谢谢~
Java中Object... 代表什么意思
java方法中返回一个Object类型的对象表示这个方法返回的类型不受限制,因为Object是所有类的父类,返回任意一个类型都属于Object类型。
事例代码如下:
public class Demo2{
private static int x= 1;//定义一个int型变量
public static void main(String[] args){
System.out.println(a());
}
private static Object a(){//此返回Object类型的值
return x;//结果一个int型变量也可以
}
}
Object类是类层次结构的根,Java中所有的类从根本上都继承自这个类。
Object类是Java中唯一没有父类的类。
其他所有的类,包括标准容器类,比如数组,都继承了Object类中的方法。
Object类是Java中其他所有类的祖先,没有Object类Java面向对象无从谈起。
java可变的成员变量什么意思
private是访问控制修饰符,如果没猜错,user应该是类UserAction里面的一个私有变量。前面使用private修饰符标识规定了user变量只能在UserAction类里面直接调用,例如赋值 userAction.user= new User();这样是不允许的,因为user是UserAction的私有变量,同样我们也不能通过userAction.user来获得userAction里面的user变量的信息。private并不是不可变,而是不能直接赋值。我们需要给 userAction里面的user赋值的时候虽然不能直接这样赋值:userAction.user= new User();但我们可以通过调用userAction的公共方法setUser(User user);来为userAction.user赋值,因为在userAction里面我们可以调用this.user=user。建议看看java基础教程
在java中String...是什么意思
string是编程语言中的字符串,String类是不可变的,对String类的任何改变,都是返回一个新的String类对象。 String对象是System.Char对象的有序集合,用于表示字符串。String对象的值是该有序集合的内容,并且该值是不可变的。
扩展资料:
功能:String类提供的成员执行以下操作:比较 String对象;返回 String对象内字符或字符串的索引;复制 String对象的值;分隔字符串或组合字符串;修改字符串的值;将数字、日期和时间或枚举值的格式设置为字符串;对字符串进行规范化。
String对象称为不可变的(只读),因为一旦创建了该对象,就不能修改该对象的值。看来似乎修改了 String对象的方法实际上是返回一个包含修改内容的新 String对象。如果需要修改字符串对象的实际内容,请使用 System.Text.StringBuilder类。
字符串中的每个Unicode字符都是由 Unicode标量值定义的,Unicode标量值也称为 Unicode码位或者 Unicode字符的序号(数字)值。每个码位都是使用UTF-16编码进行编码的,编码的每个元素的数值都用一个 Char对象表示。
参考资料:百度百科 string
java 包装类对象的之不可变
先看下面一个例子:
import java.math.BigInteger;
public class BigProblem{
public static void main(String[ ] args){
BigInteger fiveThousand= new BigInteger("5000");
BigInteger fiftyThousand= new BigInteger("50000");
BigInteger fiveHundredThousand= new BigInteger("500000");
BigInteger total= BigInteger.ZERO;
total.add(fiveThousand);
total.add(fiftyThousand);
total.add(fiveHundredThousand);
System.out.println(total);
}
}
可能会认为这个程序会打印出555000。毕竟,它将total设置为用BigInteger表示的0,然后将5,000、50,000和500,000加到了这个变量上。如果运行该程序,就会发现它打印的不是555000,而是0。很明显,所有这些加法对total没有产生任何影响。
对此有一个很好理由可以解释:BigInteger实例是不可变的。String、BigDecimal以及包装器类型:Integer、Long、Short、Byte、Character、Boolean、Float和Double也是如此,不能修改它的值。不能修改现有实例的值,对这些类型的操作将返回新的实例。起先,不可变类型看起来可能很不自然,但是它具有很多胜过与其向对应的可变类型的优势。不可变类型更容易设计、实现和使用;它出错的可能性更小,并且更加安全[EJ Item 13]。
为了在一个包含对不可变对象引用的变量上执行计算,需要将计算的结果赋值给该变量。这样做就会产生下面的程序,它将打印出所期望的555000:
代码如下:
import java.math.BigInteger;
public class BigProblem{
public static void main(String[] args){
BigInteger fiveThousand= new BigInteger("5000");
BigInteger fiftyThousand= new BigInteger("50000");
BigInteger fiveHundredThousand= new BigInteger("500000");
BigInteger total= BigInteger.ZERO;
total= total.add(fiveThousand);
total= total.add(fiftyThousand);
total= total.add(fiveHundredThousand);
System.out.println(total);
}
}
关于java可变对象是什么意思的内容到此结束,希望对大家有所帮助。