JavaSE基础03
来源:互联网 发布:knn算法matlab 编辑:程序博客网 时间:2024/06/05 04:00
方法
package practice;public class practice {public static void main(String [] args){char gread = test ('A');}public static char test (char gread){ //定义一个方法switch(gread){case 'A':System.out.println("优秀");break;case 'B':System.out.println("良好");break;case 'C':System.out.println("合格");break;default :System.out.println("不合格");}return gread; //非void类型要保证最终方法可以成功返回对应返回类型的数据}}
方法重载 overload
a、对于同名的方法,具有不同的参数列表,我们在访问的时候,通过调用方法传入不同的参数列表,就可以找到我们特定的方法。
b、当我们定义多个重载方法的时候,在编译阶段的话,编译器可以根据我们方法形式参数数量以及类型来区别不同的方法,执行阶段可以根据我们调用的时候传入形参列表,仅仅拥有不同返回值类型是不被视为重载的。
类(封装对象属性和行为的载体)
1.类是对象的类型,具有相同属性和方法的一组对象的集合。
2.类主要由两部分组成:成员变量和方法
3.成员变量:
[修饰符……] 类型 名称 = 默认值
成员变量的访问:
对象.成员变量
4.局部变量:
方法中定义的变量或者是方法的形式参数
注意:
* 对于java来说作用于控制是通过块来控制的。块:一对“{}”包裹起来的代码片段称为一块。
* 对于某个块内定义变量:
a、对于当前的块,不能再定义同名的变量,即使类型不同也不行。
b、对于当前的块,定义了某个变量,在块外不能访问到块中定义的变量。
* 如果存在块的嵌套,那么外层定义的变量在内存是可以访问到的。
5.同一个类的每个对象有不同的成员变量存储空间,同一个类不同的对象共享该类的方法。
6.类的构造方法:(特殊的方法)
构造方法没有返回值。
构造方法的名称要与本类名称相同。
格式:
public book(){
//构造的方法体
}
* 构造方法不需要void关键字进行修饰
在new(创建一个对象)的时候,一定去调用它的构造方法,但是如果我们没有自己添加自己定义的构造器的话,编译器会给我们添加一个默认的构造器,如果我们主动添加了一个默认构造器,那么在创建对象的时候,通过new 类名( );会调用我们自己添加的默认构造器。
当我们主动添加了一个包含参数的构造器,并且没有主动添加默认构造器,则再通过new 类名(),就会遇到编译问题。
package practice;public class ClassDemo {int a ;int b ;ClassDemo(int parmA,int parmB){a = parmA;b = parmB;System.out.println("constructor");}//添加默认构造器ClassDemo(){System.out.println("default constructor");}void setA(int parmA){a = parmA;}void setB(int parmB){b = parmB;}int getResult(){return a+b;}public static void main(String[] args){ClassDemo demo1 = new ClassDemo();//ClassDemo demo2 = new ClassDemo();System.out.println(demo1.getResult());}}
7.类的继承(extends)
格式:
[修饰符]class 子类名 extends 父类名{
类体
}
a、修饰符:可选参数,用于指定类的访问权限,可选值为public,abstract和final。
b、子类名:必选参数,用于指定子类的名称,类名必须是合法的Java标识符。一般情况首字母大写。
c、extends父类名:必选参数,用于指定要定义的子类继承于哪一父类。
例如:
父类Bird
public class Bird{String color = “白色” ;String skin = “羽毛”;}
子类Pigeon
public class Pigeon extends Bird{ //类的继承 public static void mian(String [] args){ Pigeon pigeon = new Pigeon(); System.out.println(pigeon.color);}}
对象(将类实例化后出现对象)
1.Java中所有问题都通过对象来处理,对象可以操作类的属性和方法来解决问题。
2.Java为什么使用面向对象?
a、程序的本质
b、编程语言的发展一直在追求更易于开发的方式
c、复用
d、分装
e、高维护性和可读性
3.用new来创建对 象 如:Test test = new Test();
* test对象被创建出来时,test对象就是一个对象的引用,这个引用在内存中为对象分配了存储空间,可以在构造放法时初始化成员变量,当创建对象时,自动调用构造方法,也就是说在java中初始化与创建时捆绑在一起的。
* 每个对象都是相互独立的,在内存中占据独立的内存地址,并且每个对象都具有自己的生命周期,当一个对象的生命周期结束时,对象变成了垃圾,由java虚拟机自带的垃圾回收机制处理,不能再被使用。
package practice;public class Person {int age ;int height;int weight;boolean sex;Person(int ageparm,int heightparm,int weightparm,boolean sexparm){//变量初始化age = ageparm;height = heightparm;weight = weightparm;sex = sexparm;}void getSex(){ //创建一个方法if(sex){System.out.println("男");}else{System.out.println("女");}}public static void main(String[] args){Person green = new Person(40,170,65,false);// 创建一个green对象green.getSex(); //调用getSex这个方法 }}
- JavaSE基础03
- JavaSE基础
- JavaSE基础
- javase基础
- JavaSE基础
- javaSE基础
- JavaSE基础
- JavaSE基础
- JavaSE基础
- JavaSE 基础
- JavaSE基础
- 01javaSE基础 javaSE环境变量
- JavaSe总结-03--Java基础语法(2)
- JavaSE 03 Java基础语法(二)
- JavaSE基础小结--0
- JavaSE基础加强
- Javase基础(一)
- Javase基础(二)
- 数据库垂直拆分与水平拆分
- 47.笔记go——go连接Oracle
- 48.笔记go语言圣经——go图形化
- 《如何运行第一个C/C++语言程序》
- 49.笔记go语言——实现斐波那契
- JavaSE基础03
- 50.笔记go语言——go语言函数细节
- Qt二维图形编程之窗口-视口概念理解
- 51.笔记go语言——go语言数据结构
- Outlook邮箱重新配置
- 再按一次退出程序code
- 例题6-4 UVA11988 悲剧文本
- 52.笔记go语言——defer使用场景
- 安卓单元测试全攻略,让代码测试一劳永逸