李钢-15级
发表于 2016-5-16 13:05:14
ref参数的应用,能够将一个变量带入一个方法中应用,值也跟着改变(和指针类似),要求在调用方法前赋值,引用时也需要加refi
下面程序 交换两个数的值。
李钢-15级
发表于 2016-5-16 14:21:14
params 可变参数。
在数组中常被用,而且应用时,要将这个参数放到最后一个。一个参数列表中只能有一个可变参数。
如下:public static void sum(int a,params int[] score);
调用 sum(a ,1,13,44,55)
李钢-15级
发表于 2016-5-16 14:41:48
方法重载
要求:函数名相同,但是参数不同
参数不同,个数不同,或者类型不同。重载与返回值无关。
李钢-15级
发表于 2016-5-16 15:27:32
本帖最后由 李钢-15级 于 2016-5-16 15:29 编辑
方法的递归
也要跳出递归。下面程序是多次调用。输出risk
李钢-15级
发表于 2016-5-16 16:23:24
恩恩
李钢-15级
发表于 2016-5-18 00:24:16
本帖最后由 李钢-15级 于 2016-5-18 15:32 编辑
面向对象
找出通用代码,屏蔽差异。
找对象
类是具有相同(属性和方法)的对象集合
public class 类名
{
字段
属性
方法
}
写好类后(add-class),创建对象(在主函数内创建,给字段赋值,调用方法)的过程中叫做实例化,利用new。类不占内存,对象的字段占占内存。
李钢-15级
发表于 2016-5-18 19:09:10
本帖最后由 李钢-15级 于 2016-5-18 20:46 编辑
属性
作用是保护字段(字段必须是私有的,而属性一般是公开的)、对字段的赋值与取值作一个限定。
set
get
所以赋值最好是给属性赋值就好。引用也是一样
李钢-15级
发表于 2016-5-18 20:50:03
本帖最后由 李钢-15级 于 2016-5-19 01:44 编辑
静态与非静态(默认)的差别
1在非静态类中,既可以有实例成员(非静态的),也可以有静态的
2在调用实例成员时。对象名.成员名(属性,方法,字段)
在调用静态成员时,只能是类名.成员名
3静态方法中不能访问,非静态成员
4非静态方法中都可以使用
5静态类中只能有静态的成员
6静态类不用实例化对象。
7经常使用的方法构成的类,叫做“工具类”,通常用作静态类
8静态类越少越好,程序结束后才释放资源
李钢-15级
发表于 2016-5-18 22:45:08
本帖最后由 李钢-15级 于 2016-5-19 08:45 编辑
构造函数(初始化函数,初始化属性)
1没有返回值,void也不能写
2名称必须类名一样
创建对象的时候,先执行构造函数
构造函数可以有重载(函数名一样,参数不一样)
关键字new
1,在内存中开辟空间
2创建对象
3用构造函数初始化。 下图当中name是读写属性。应该这样赋值 this .Name=name.
李钢-15级
发表于 2016-5-18 23:08:22
本帖最后由 李钢-15级 于 2016-5-19 01:35 编辑
this
1代表当前类的对象
2在类中调用 构造函数,用法如下图