Java基础概念

Java是什么?

  • Java是一门面向对象的编程语言,分为JavaSE、JavaEE、JavaME三个版本。OOP(Object Oriented Programming)面向对象编程。
  • JavaSE开发桌面应用程序
  • JavaEE开发企业级应用程序
  • JavaSE开发嵌入式应用程序
  • 特点:
  • 简单、面向对象、分布式、多线程、解释型、跨平台:一次编写,到处运行。

什么是对象?什么是类?什么是面向对象?

  • (现实世界)对象是实物,万物皆对象。比如二哈、金毛。
  • (现实世界)类是多个相似对象的统称。比如狗。
  • (软件世界)类是现实世界类的抽象。
  • (软件世界)对象是(软件世界)类的具体(实例)。
  • 类由属性和方法组成。
  • 属性:类的特性。
  • 方法:类的行为。
  • 简单地区分,属性是名词,方法是动词。
  • 面向对象是一种编程思想,模拟现实世界对象之间的逻辑。以类为对象,类与类之间沟通合作,共同完成任务。
  • 面向对象是一件事让谁做,面向过程是一件事如何做。

面向对象的三大特征

封装

概念:隐藏对象的属性和实现细节,仅对外提供公共访问方式。

继承
多态
抽象类
接口

成员变量与局部变量

类中位置不同内存中位置不同生命周期不同初始化值不同
成员变量在类中方法外在堆内存随创建对象而存在,随对象消失而消失有默认初始化值
局部变量在类中方法内或方法声明上在栈内存随方法调用而存在,随方法调用完毕而消失没有默认初始化值,先赋值后使用

p.s.:当成员变量与局部变量名称一样,在方法中使用,就近使用。

形式参数 实际参数

  • 形式参数为基本类型(比如int),形式参数的改变不影响实际参数。值传递。
    p.s. String也不改变
  • 形式参数为引用类型,形式参数的改变影响实际参数。地址值传递。
public class FormalParameters {
	
	public static void change(int i){
		i = 2;
	}
	public static void change(String s){
		s = "world";
	}
	
	public static void change(StringBuffer sb){
		sb = new StringBuffer("def");
	}
	
	public static void change(StringBuilder sb){
		sb.append("beijing");
	}
	
	public static void main(String[] args) {
		int i = 1;
		change(i);
		System.out.println(i); // 1
		
		String s = "hello";
		change(s);
		System.out.println(s); // hello
		
		StringBuffer sb = new StringBuffer("abc");
		change(sb);
		System.out.println(sb); //abc
		
		StringBuilder sb2 = new StringBuilder("china");
		change(sb2);
		System.out.println(sb2); //chinabeijing
	} 
}

this super

this:代表当前类的一个引用对象。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值