我是 Java 语言的新手,我对这两种方法调用之间的不同感到困惑(我不知道它到底是不是方法调用)
但是如果我需要调用方法来计算我称之为的东西
salary obj=new salary();
obj.bonus(45000);
但是当我们调用 String length 方法时,我们将其称为
String name="Java lovely";
name.length();
这两种方法有什么不同。请帮助我克服这个问题。
谢谢
String name="Java lovely";
您可能会与字符串文字混淆。
如果我写了你会明白的
String s = new String("Java Lovely");
s.lenght();
字符串是一个类。 String 类表示字符串。Java 程序中的所有字符串文字,例如“abc”,都是作为此类的实例实现的。
字符串是常量;它们的值在创建后无法更改。字符串缓冲区支持可变字符串。因为 String 对象是不可变的,所以它们可以被共享。例如:
String str = "Java lovely";
相当于:
char data[] = {'J', 'a', 'v', 'a', ' ', 'l','o', 'v', 'e','l', 'y'};
String str = new String(data);
length 是 String 类的方法。
在上部即
salary obj=new salary();
obj.bonus(45000);
在这个薪水是一个类,你创建了这个'obj'的对象,奖金是你在薪水类中定义的一个方法,你正在调用该方法
另一个是
String name="Java lovely";
name.length();
这里是一样的
String name=new String("Java lovely");
并且您正在字符串对象“名称”上调用长度方法。
两者都是相同的,但一个区别是字符串是恒定的(不可变的)意味着一旦你创建了它,你就不能改变它,但你的薪水等级不是恒定的,你可以改变它。
为了更好地理解java,你可以阅读这本书。首先是Java
完全一样。obj 和 name 都是它们的类的实例。BUt String 是 java 中的特殊类。它可以像上面那样创建,不需要new关键字。
它是一样的,就像String
一个现成的 java 类一样。你(们)能做到 :
String name = new String("dsdsd");
这好像是
String name = new String();
name = "dsdsd";
name.length();
你们男人有什么区别?第一个电话在 () 之间有什么?而name.length不是吗?那是因为方法红利是带参数的方法。它需要一个值,在这种情况下是一个整数或 int 来做一些事情。但 Name.length 并不意味着任何值,它只是返回字符串的保存长度。
或者你在哪里看到了不同之处?
obj.bonus(number); and
name.length ();
其实是一样的……
对不起,如果这不是你的问题。
编辑:或者你的意思是构造函数?这是因为string在java中比较特殊,实际上是new String("lalala"); 是正确的。
salary obj=new salary(); // You are initializing salary class
obj.bonus(45000); // Your salary class contains bonus method and it takes
int argument
因此,您调用了红利方法并将 45000 解析为该方法。
String name="Java lovely"; // You are define a String
name.length(); // this will return the length of name String, no need input
argument and return int length