java基础语法字符连接与方法重载
字符连接符号 +
例如:
String a = “why”
String b = “cy”
想要输出"whycy",则写为:System.out.println(a+b);
不同于C之处是:不用去纠结转化符的东西,只要“+”就完事!
也发现两个字符串的拼接也是如此
String c = a+b 那么 c 就是"whycy"
在java中,方法是很重要的东西,个人觉得方法就是c里面的函数?
public class Test1{
//入口主方法
public static void main(String[] args){
int x =100;
int y = 200;
sumInt(x,y);
Test1.sumInt(x,y);
//调用方法sumInt 调用方法有两种写法,在此可分为
Test1.sumInt(x,y)和sunInt(x,y)
有何区别?当方法在一个大类(Test1类)之中,(也就是最外面
同一个大括号里面)就可以省略类名(Test1),但是不在的话就得
加上类名来识别。
}
// 求和方法(函数)
public static void sumInt(int x, int y){
int z = x + y;
System.out.println(x + “+” + y + “=” + z);
}
}
方法重载
在java中,方法是可以重载的,意思是
“功能相似”的方法,可以让“方法名相同”,通过传参的不同来区分不同的具体细化内容,更易于以后的代码编写。
例如,定义一个sum方法,返回两参数相加的结果
public static int sumInt(int a, int b){
return a + b;
}
public static long sumLong(long a, long b){
return a + b;
}
public static double sumDouble(double a, double b){
return a + b;
}
这样写非常麻烦,但是完成的功能差不多,他们仅仅有微小的差异(传入和返回的数据类型不同),
为什么说他麻烦?因为在调用这三个方法时,得写不同的方法名,例如
sumInt(1,2)
sumLong(10L,2000L)
sunDouble(3.2,4,2)
一旦方法多了就会带来麻烦,所以现在将他们的方法名统一到一个 sum 上,就写为了
public static int sum(int a, int b){
System.out.println(“int求和”);
return a + b;
}
public static long sum(long a, long b){
System.out.println(“long求和”);
return a + b;
}
public static double sum(double a, double b){
System.out.println(“double求和”);
return a + b;
}
可以看到,方法名字均为 sum 而且调用时不用去担心是否调用错方法,直接sum()输入啥都行!
这就是方法重载的优点。
类的初步
类,是一个有共同特征的"对象"的集合体,可以认为是结构体?但是个人感觉又不像,部分相同部分不同;
定义方法为
//学生类
public class XueSheng{
为什么加public?因为如果你单独去在一个 .java 文件中写的话,
必须得有public的类,当然我不咋这么做。例如我如果在一个完整
的代码段中,那么类的定义也可以写成
class XueSheng{
}即可。
}
对我来说更常用的是
class XueSheng{
int idNumber;
String name;
String address;
等等属性
}
对象的创建
类是对象的集合体,对象是类中的单个元素,对象具备类中定义的所有特征。
如何创建对象?用 new 运算符(没对象,new一个)
具体语法是
XueSheng s1 = new XueSheng();
第一个XueSheng 是变量类型
s1是变量名(s1被称为"引用")
new是运算符
XueSheng()是构造方法 无构造方法则为默认的
通过 . 运算符去访问对象的每个属性
例如每个学生的学号
s1.idNumber
姓名
s1.name等等
在此基础去对每个对象进行操作
构造方法
构造方法的语法结构是?
[修饰符列表] 构造方法名(形式参数列表){
构造方法体;
通常在构造方法体当中给属性赋值,完成属性的初始化。
}
例如上面的XueSheng方法,我们就可以通过定义构造方法来完成对XueSheng中对象的初始赋值
public XueSheng (int a,String b,String c)
{
idNumber = a;
name = b;
address = c;
}
这样去初始化每个XueSheng中对象的属性的初始值,从而去帮助我们干一些事情。
当然,前面提到了默认的无参数构造方法,他的具体类容如下
public XueSheng(){
idNumber = 0;
name = null;
address = null
可以看到,在默认的构造方法中,数据均为0,而其他为null
}
同时,也可以通过方法重载的用法,来编写多个构造方法
例如
public XueSheng(int a,String b)
{
内容省略
}
public XueSheng(int a)
{}
这样也是支持的,当你在构造时,使用的语法是
XueSheng s1 = new XueSheng(233,“aaaa”)
则调用第一个构造方法
XueSheng s2 = new XueSheng(34444)
则调用第二个构造方法
本文地址:https://blog.csdn.net/qq_46144335/article/details/107698866