Java基础.1

本文介绍了Java的基础知识,包括java简介、第一个代码示例、基本语法、数据类型、分隔符、修饰符、变量、运算符、面向对象的概念及三大特征、抽象、final关键字和接口的使用。此外,还详细讲解了方法的重写和重载的区别。
摘要由CSDN通过智能技术生成

java 简介

Java简介

java 第一个代码

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("HelloWorld");
    }
}


(1)java源文件以.java命名
(2)一个Java文件只有一个public class,且与源文件同名
(3)mian方法是程序的入口,只有一种写法
(4)java严格区分大小写
(5)每条语句用分号;隔开

基本语法

大小写敏感:Java 是大小写敏感的,这就意味着标识符 Hello 与 hello 是不同的。
类名:对于所有的类来说,类名的首字母应该大写。如果类名由若干单词组成,那么每个单词的首字母应该大写,例如 MyFirstJavaClass 。
方法名:所有的方法名都应该以小写字母开头。如果方法名含有若干单词,则后面的每个单词首字母大写。
源文件名:源文件名必须和类名相同。当保存文件的时候,你应该使用类名作为文件名保存(切记 Java 是大小写敏感的),文件名的后缀为 .java。(如果文件名和类名不相同则会导致编译错误)。
主方法入口:所有的 Java 程序由 public static void main(String []args) 方法开始执行。

数据类型

Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。
下表列出了 Java 各个类型的默认值:
数据类型

分隔符

最常见的分隔符是分号(;),用来分隔不同的Java语句。
一些空白分隔符(white space)。它可以是空格符、Tab跳格键,或者换行符。
还有点号(.),它可将软件包的名字与它的子包或类分隔,也可将引用变量与变量或者方法分隔。

java 修饰符

访问控制修饰符 : (包访问权限)default, (公共)public , (受保护)protected, (私有)private
非访问控制修饰符 : final, abstract, static, synchronized

java 变量

局部变量:方法或语句块内部定义的变量。
成员变量(非静态变量):方法外部、类的内部定义的变量。
类变量(静态变量):类变量也声明在类中,方法体之外,但必须声明为static类型。

运算符

算术运算符:+, - ,*, / ,%,++,–, Math
关系运算符:=, <, >, == ,!=
逻辑运算符:&, &&, |, ||, !
位运算符:^,&,!,|, >> , <<
赋值运算符:=, +=, *=, -=, /=
字符串连接符:+

import java.util.Scanner;
public class Circular {
public static void main(String[] args) {
	final double pi=3.14;
	Scanner scan=new Scanner(System.in);
	double radius=scan.nextDouble();
	System.out.println("圆的半径是"+radius);
	double area;
	area=pi*radius*radius;
	System.out.println("圆的面积是"+area);
}
}

对象

对象:对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。
类:类是一个模板,它描述一类对象的行为和状态。
方法:方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的。
实例变量:每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定。

package one;

public class Puppy {	
	public Puppy(String name){
		      //这个构造器仅有一个参数:name
    System.out.println("小狗的名字是 : " + name ); 
		   }
	public static void main(String[] args){
		      // 下面的语句将创建一个Puppy对象
	Puppy myPuppy = new Puppy( "tommy" );
		   }
	}

面向对象

面向对象

什么是对象?
实例

面向对象的作用
封装 + 拼装

面向对象的优势
易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统更加灵活、更加易于维护。

面向对象三大基本特征

封装:将数据和对数据的操作封装在一起,用“类”实现
继承:新的类可以获得已有类(称为超类、基类或父类)的属性和行为,Java只支持单继承
多态:程序中同名的不同方法共存,不同对象可以响应同名消息完成特定功能,对同一类对象的不同形式的具体化。

抽象

忽略问题中与当前目标无关的方面,以便更充分地注意与当前目标有关的方面。
方法的声明,既标识这个方法,但是不对其实现的具体过程进行声明 使用abstract 进行修饰。
抽象类中定义抽象方法目的就是为了实现一个接口,多种方法的原理,即所有的子类对外都呈现一个相同名字的方法。

注意:

1、抽象类中可以有零个或多个抽象方法,也可以含有非抽象方法
2、有抽象方法的类必须是抽象类
3、非抽象子类必须实现抽象类中定义的所有抽象方法
4、abstract不能与final修饰同一个类
5、abstract不能与priavte、static、final并列修饰同一个方法
6、abstract类中不能有private的数据成员或方法

final

final修饰的变量的值不能被改变,是常量
final修饰的方法不能够被重写,是终结方法
final修饰类不能被继承,是终结类

接口

什么是接口?
特殊抽象方法 + 常量

在 Java 中,接口可理解为对象间相互通信的协议。接口在继承中扮演着很重要的角色。
接口只定义派生要用到的方法,但是方法的具体实现完全取决于派生类。

抽象类中定义抽象方法目的就是为了实现一个接口,多种方法的原理,即所有的子类对外都呈现一个相同名字的方法
多个无关的类可以实现同一个接口
一个类可以实现多个无关接口
接口与实现之间也存在多态性
接口可以继承其它接口,并添加新的属性和抽象方法

public interface Sports
{
   public void setHomeTeam(String name);
   public void setVisitingTeam(String name);
}
 
public interface Football extends Sports
{
   public void homeTeamScored(int points);
   public void visitingTeamScored(int points);
   public void endOfQuarter(int quarter);
}
 
public interface Hockey extends Sports
{
   public void homeGoalScored();
   public void visitingGoalScored();
   public void endOfPeriod(int period);
   public void overtimePeriod(int ot);
}

Hockey接口自己声明了四个方法,从Sports接口继承了两个方法,这样,实现Hockey接口的类需要实现六个方法。
相似的,实现Football接口的类需要实现五个方法,其中两个来自于Sports接口。

方法的重写和重载的区别

重载,仅仅是方法名相同。
重写,仅是方法的实现过程不同。

//重写的例子
public class Animal {
String name;
int age;
char sex;
void spe(String n,int a,char s) {
	name=n;age=a;sex=s;
}
static void enjoy() {
	System.out.println("我高兴了");
}
}


public class Cat extends Animal {
static String eyecolor;
static void spe(String n, int a, char s, String e) {
	eyecolor=e;
	System.out.println("猫名:"+n+"\t"+"年龄:"+a+"\t"+"性别:"+s+"\t"+"瞳色:"+e);
}
static void enjoy() {
	System.out.println("我高兴了,MIAOMIAOMIAO");
}
}


public class Dog extends Animal {
static String furcolor;
static void spe(String n, int a, char s, String f) {
	furcolor=f;
	System.out.println("狗名:"+n+"\t"+"年龄:"+a+"\t"+"性别:"+s+"\t"+"毛色:"+f);
}
static void enjoy() {
	System.out.println("我高兴了,WANGWANGWANG");
}
}


public class Enjoy {
	public static void main(String[] args) {
		Dog dog=new Dog();
		Cat cat=new Cat();
		Dog.spe("xiaobai",12,'母',"黑色");
		Dog.enjoy();
		Cat.spe("xiaohua",2,'公',"蓝色");
		Cat.enjoy();
	}
}

运行结果
以上为Java基础.1,部分内容来自于菜鸟教程。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值