蓝旭第一次培训学习

本文详细介绍了Java编程中的基本概念,如输出与输入操作、Scanner的使用、对话框显示、数据类型转换、数组、分支结构(if和switch)、循环(for、while、do-while),以及面向对象特性如封装、继承、多态和访问修饰符的讲解。
摘要由CSDN通过智能技术生成

输入输出

1.输出

system.out.print();//不换行输出

system.out.println();//换行输出

JOptionPane.ShowmessageDialog(null,msg);

//弹出框输出

2.输入

JoptionPane.showInputDialog();//弹窗输人

1.scanner先调用

import java.util.Scanner;
Scanner input =new Scanner(System.in);
int age=input.nextint();

注意:next后随数据类型而改变

2.字符串转int/double

double age=Double.parseD1ouble( input.nextLine());

int age=Integer.parseInt(input.nextLine());

数组

解释:可以用来存储同种数据类型的多个值的一种容器

定义:

格式一:数组类型[ ]数组名

格式二:数组类型 数组名[ ]

静态初始化

格式:数据类型[]数组名=new 数据类型[]{元素一,元素二,}

动态初始化

格式:数据类型[]数组名=new 数据类型[数组长度 ]

分支

1.if(关系表达式为ture执行语句体)

格式一:

if(关系表达式){
    语句体;
}

格式二:

if(关系表达式){
    语句体1;
}else{
    语句体2;
}

格式三:

if(关系表达式1){
    语句体1;
}else if(关系表达式2) {
    语句体2;
}
....
else{
    语句体n+1
}

2.switch

switch(表达式){
    case1;
    语句体1;
     break;
     case2;
     语句体2;
     break;
     case3;
     语句体3;
     break;//无break会case穿透
     ....
    default;//所有case都不匹配执行default
     语句体n+1;
    break;}
    
    

循环

for循环

for(初始化语句;条件判断语句;条件控制语句){
    循环语句体;
 }

while循环

  初始化语句;
while(条件判断语句){
     循环语句体;
      条件控制语句;
  }

do while循环

do {
    循环语句体;
     条件控制语句;
 } while(条件判断语句)

面向对象特性之一——封装

对象代表什么,就封装对应数据,并提供对应数据的行为

eg:人关门(方法应写入门类中)

好处:少学,少写,简直太优雅了

private关键字,set get的使用方法

被private修饰的成员只有在本类中才能访问

set可创造一条赋值通道

get可创造一条获取通道

如下

private int age;
public void setage(int a){
    if(a>=18&&a<=50)age=a;
    else System.out.println("非法数据");
​
}
public int getage(){
    return age;
}

this关键字,就近原则,成员变量和局部变量

成员变量:方法之外,类之中

局部变量:方法之中

就近原则:谁近就用谁

this关键字:可直接调用成员变量

面向对象特性之一——继承

关键字:extends(让一个类与另一个类建立继承关系)

java只能单继承不能多继承但能多层继承

间接父类:间接继承

直接父类:直接继承

object是祖宗

关于子类继承的内容

类别继承的内容备注
成员变量public, protectedprivate不继承,默认包访问权限同包内可见
方法public, protected可重写,private不可见,final不能被重写
构造方法不直接继承可通过super调用父类构造方法
接口/抽象类必须实现/继承若父类实现或继承接口,子类需遵守
静态方法可访问静态方法属于类,但不属于实例,故非继承而是可见
注解依注解定义通常不继承,特殊设计可能允许

注:1.父类private修饰的成员变量,子类若想调用需要通过set,get方法

2.成员方法能被添加入虚方法表则能够被继承

访问修饰符是否可被添加入虚方法表原因
private私有方法只能在本类中访问,无法被子类继承和覆盖
static静态方法与实例无关,不参与多态性,不会被添加到虚方法表中
finalfinal方法不能被子类覆盖

3非原则

继承中:成员变量的访问特点

就近原则:谁近就用谁

局部>成员>父类

this关键字:可直接调用成员变量

super关键字:可直接调用父类变量

继承中:成员方法的访问特点

就近原则:谁近就用谁

this关键字:可直接调用成员方法

super关键字:可直接调用父类方法

方法的重写(被加入虚方法表才可重写)

父类方法不能满足需求便可重写并需加上Override

继承中:构造方法的访问特点

可通过super调用父类构造方法

面向对象特性之一——多态

同类型的对象,表现出不同的形态

格式:父类类型 对象名称=子类对象;

前提:有方法重写,有继承关系,有指向

好处:使用父类作为形参可以接收所有子类对象

多态中成员方法和成员变量的访问特点

成员变量:编译看左,运行看左(父类)

成员方法:编译看左,运行看右(重写)

  • 17
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值