why的自学JAVA学习笔记awa

JAVA学习笔记

2020年7月30日

字符连接符号 +

例如:

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)
则调用第二个构造方法
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值