此总结来自B站中 动力节点, 感谢老师的辛勤讲解。总之优秀还有很多没有学会,要加油吖
文章目录:
- 此总结来自B站中 动力节点, 感谢老师的辛勤讲解。总之优秀还有很多没有学会,要加油吖
- 1、 break 与 continue 区别
- 栗子:
- 2、while(){} 与do....while (){}
- 3、super和this
- 4、方法的本质是什么?
- 4.2、形式参数列表:简称形参
- 5、方法的重载?Overload
- 6、创建类的属性
- 7、封装
- 8、继承 extend
- 1、继承基本的作用?
- 2、在Java语言当中子类继承父类都继承哪些数据?
- 3、关于继承中的一些术语:
- 4、关于Java语言中方法的覆盖:
- 4.1、方法的覆盖又被称为方法的重写,英语单词:Override
- 4.2、什么时候使用方法的重写?
- 4.3、什么条件满足之后方法会发生重写呢?
- 4.4 注意点:
- 9、多态:
- 1、向上转型:子类指向父类型。又被称为:自动类型转换。
- 2、向下转型:父类指向子类型。又被称为:强制类型转换。【需要加强制类型转换符】
- 3、需要记忆:无论是向上转型还是向下转型 两种类型 之间必须要有继承关系。没有继承关系,编译无法通过的。
- 4、多态的作用是什么?
- 多态总结:
- 10 、静态代码块:
- 11、栈、堆、方法区、
- 12、final关键字
- **【转载注明出处,还望尊重原创 】**
- 《要相信自己吖. 》
1、 break 与 continue 区别
1、continue:表示继续执行下一次循环。
2、break: 表示中断本次循环。满足条件即跳出循环。
栗子:
for MyExer : for (int i =0;i<10; i++){
if(i == 6){
continue MyExer;
break;
}
System.prtln("i="+i);
}
System.out.println(....)
2、while(){} 与do…while (){}
while() 先判断在执行。
do... while (); 先执行在判断。。
3、super和this
super和this的用法相同:this代表本类应用 ;super代表父类引用 。
this 是一个关键字,翻译为这个:
1、this 是一个引用,this 是一个变量,this 变量中保存了内存地址值本身,this存储在JVM堆内存Java 对象内部。
2、this 出现可以出现在"实例方法"当中,this 指向当前正在执行这个动作的对象。this代表本类对象
3、this 不能出现在带static 关键字的方法中。
4、方法的本质是什么?
方法就是一段代码片段,并且这段代码片段可以完成某个特定的功能,并且可以重复的使用。。
– 方法是定义在类体当中,在一个类中可以定义多个方法,方法编写的位置没有先后顺序。。。
注意点:方法体中不能定义方法.
4.2、形式参数列表:简称形参
形参是局部变量: int a, int b ,String name, String age,
形参的个数据可以是:0 - N个
多个形参之间用 :"逗号" 隔开
形参中起决定性因素的是形参的数据类型,形参的名字就是局部变量的名字...
方法在调用的时候,实际给这个方法传递的真实数据被称为 :实际参数(实参)
int a,int b 是形参列表
public static int sum(int a,int b){
sum(10,20)
}
public static void sumint (int a, int b){
修饰符列表 返回值类型 方法名 (形式参数列表)
int c =a+b
方法体。
System.out.println(a+ " + " + b + " - " +c );
}
public class MethodTest{
Main 方法
// 调用 MethodTest.m
m 可以省略
}
public static void m(){
System.out.println(“My Name is ZHIQIANG”);
}
5、方法的重载?Overload
程序员调用方法的时候,比较方便,虽然调用的是不同的方法,但是就感觉使用一个方法。
代码美观。
前提:功能相似的时候,方法名可以相同。
栗子:
public class Overload{
main 方法
System.out.println(sum(1,2))
}
public static int sum(int a, int b){
System.out.println("sum(a+b)")
return a+ b;
}
// 形参
public static long sum (long a, long b){
System.out.println("sum(a+b)")
return a+ b;
}
3.1什么时候使用方法的重载?
功能相似的时候,方法名尽肯能让方法名相同。
【但是:功能不同/不相似的时候,尽可能让方法名不同】
3.2什么条件满足之后构成了方法的重载?
在同一个类当中
方法名相同
参数列表不同:
-参数不同
-顺序不同
-类型不同
栗子:
public class OverloadTest{
--------------以下两个方法构成了重载--------------------
public static void m1(){}
public static void m1(int a){}
--------------以下两个方法构成了重载--------------------
public static void m2( int a,double b ){}
public static void m2 (double a,int b){}
-------------以下两个方法构成了重载---------------------
public static void m3(int x){}
public static void m3(double x){}
}
## 形参中决定关键因素的是数据类型。。
3.3方法重载和什么有关系,和什么没有关系?
1、方法重载和方法名+参数列表有关系
2、方法重载和返回值类型无关
3、方法重载和修饰符列表无关
6、创建类的属性
手动赋值
Person p = new Person();
String name =" Baby"
String age =“19”;
System.out .println(P.name);
System.out .println(P.age);
7、封装
1、set and get 方法没有static关键字
2、有static关键字修饰的方法怎么调用:类名.方法名(实参);
3、没有static关键字修饰的方法怎么调用:引用.方法名(实参);
4、 coustem c = new coustem();
c 是引用数据类型
c.属性。
关于Java类中的构造方法:
1、构造方法又被称为构造函数/构造器/
2、对于构造方法来说,构造方法的方法名必须和类名保持一致。
3、构造方法的作用?
构造方法的意义是,通过构造方法的调用,可以创建对象。
1、创建对象
2、给实例变量赋值
3、
4、构造方法怎么调用?
-普通方法的调用:方法修饰中有static的时候: 类名.方法名(实参列表)、
方法修饰中没有static的时候:引用.方法名(实参列表)
-构造方法的调用:new 构造方法名(实参列表)
5、构造方法调用之后,有返回值吗?
每一个构造方法实际上执行结束之后都有返回值,但是这个"return 值"这样的语句不需要写。构造方法结束的时候Java程序自动返回值。
并且返回值类型是构造方法所在类的类型,所以不需要写返回值类型。
6、当一个类中没有定义任何构造方法的话,系统默认给该类提供一个无惨的构造方法,这个构造方法被称为缺省构造器。
//有参数的构造方法
栗子:public User(int i){
System.out.println(“int 类型参数的构造器”);
}
//有参数的构造方法
public User(int i ,String name){
System.out.println(“带有int,String类型的构造器”);
}
//创建User对象
//调用User类的构造方法来完成对象的创建
User u =new User();
User u2 = new User(10,“张三”);
以上程序创建了2个对象,只要构造函数调用就会创建对象,并且一定是"堆内存中"开辟内存空间。
1、get set 方法;
2、提供有参、无参
3、
Customer c2 =new Customer(1111,"张三 ",“1980-7-11”);
System.out.println(c2.getno());
System.out.println(c2.getname());
System.out.println(c2.brith());
4、
// 实例变量如下:
int i= 10;
// 实例方法如下:
public void dosome(){
}
8、继承 extend
1、继承基本的作用?
1、代码复用
2、有了继承才有了以后 "方法的覆盖” 和 “ 多态机制”;
继承的概念?
java 语言当中的继承只有单继承,一个类不能继承很多类,只能继承一个类。
2、在Java语言当中子类继承父类都继承哪些数据?
- 私有的不支持继承
- 构造犯法不支持继承
- 其他数据都可以被继承
3、关于继承中的一些术语:
B类继承A类,其中:
A类称为:父类、基类、超类、superclass
B类称为:子类、派生类、subclass
4、关于Java语言中方法的覆盖:
4.1、方法的覆盖又被称为方法的重写,英语单词:Override
4.2、什么时候使用方法的重写?
当父类中的方法已经无法满足当前子类的业务需求,
子类有必要将父类中继承过来的方法进行重写,
这个重新编写的过程称为:方法重写、方法覆盖。
4.3、什么条件满足之后方法会发生重写呢?
- 方法重写发生在具有继承关系的父子类之间
- 返回值类型相同,方法名相同。形参列表相同。
- 访问权限不能更低。。。
4.4 注意点:
【 建议在方法重写时尽量复制、黏贴、容易出错、导致没有产生覆盖 】。
私有方法不能继承,所以不能覆盖。
构造方法不能继承,所以不能覆盖。
静态方法不存在覆盖。
覆盖只针对方法,不谈属性。
9、多态:
1、向上转型:子类指向父类型。又被称为:自动类型转换。
2、向下转型:父类指向子类型。又被称为:强制类型转换。【需要加强制类型转换符】
3、需要记忆:无论是向上转型还是向下转型 两种类型 之间必须要有继承关系。没有继承关系,编译无法通过的。
4、多态的作用是什么?
降低程序的藕合度,提高程序的扩展力。
能使用多态,尽量使用多态。
父类指向子类型对象。
多态总结:
成员访问特点
成员变量
编译看左边,运行看左边
成员方法
编译看左边,运行看右边
静态方法
编译看左边,运行看左边
所以前面我说静态方法不能算方法的重写
10 、静态代码块:
11、栈、堆、方法区、
这个还没理解,先学会语法在补这块,过!!!!!
12、final关键字
1、final关键字是最终的意思,可以修饰类,成员变量,成员方法。
修饰类,类不能被继承
修饰变量,变量就变成了常量,只能被赋值一次
修饰方法,方法不能被重写
2、final 修饰的实例变量是不可变的,这种变量一般和static 联合使用,被译为:“常量”
package iwork3;
import iwork2.stitic;
/**
- 需求:每一個中國人的國際都是中國人,而且国籍不会改变,為了防止国籍被修改,建议加final;
- @author Administrator
*/
public class FinalTest {
public static void main(String[] args) {
System.out.println(chinese.country);
}
}
/**
- 常量的語法格式如下:
- public static final 類型 變量名 = “值”;
*/
class chinese {
public static final String country =“我是中國人。。。。。”;
}
【转载注明出处,还望尊重原创 】
《要相信自己吖. 》
【作者水平有限,如有错误欢迎指正 .】
地址:上海,天气晴,时间:2020-6-14 12:19;