【JAVA学习笔记】面向对象基础

 

栈内存 : 对象

堆内存 : 属性

全局变量 : 所有的方法

构造方法是在对象实例化时被自动调用

对象实例化需要通过new关键字

 

对象产生的格式

      类 对象名 = new ();

      ():调用类中的构造方法

 

Java之中每个类都必须有一个构造方法,如果没有构造方法,则会自动产生一个无参的什么都不做的构造方法,因为所有的对象产生时都必须调用构造方法.

如果程序中已经有构造方法,则不会产生一个什么也不做的无参构造方法.

 

结论:无论采用哪种方法为类中的属性赋值,最好都通过setter方法,setter方法对输入的内容进行检查,getter方法只是将内容简单的返回.

 

不定义对象的引用名称,而直接调用这个对象的方法,这个对象就叫做匿名对象,:new Person().shout();

如果对一个对象只需要进行一次方法调用,那么就可以使用匿名对象,我们经常将匿名对象作为实参传递给一个函数调用

 

记住:往往是作为方法的参数出现

 


**************************我是分隔线**************************


String是一个类,

 


两个方法都可以使用,那到底要使用哪种方法呢?

比较两个字符串是否相等,需要equals方法

 

“==”equals的区别

equals:可以比较内容,是两个字符串内容的比较

==:数值比较,比较的是内存地址的值是否相等

 

这个字符串到底是什么东西

 System.out.println("张三".equals(name1));  //证明了一个字符串就是String类的匿名对象 

 

String的另一个特殊之处:String使用了java中的共享设计模式,

使用Java引用传递的概念

  


**************************我是分隔线**************************


this如何去调用属性?


this可以去调用本类中的方法

 

 

this用于构造方法的调用

 

注意:

   构造方法本身必须在首行被调用.为了能够为类中的属性初始化

 

this调用属性,本类方法,构造方法这三点是this的基本应用,也是最常用的,但是以上三点实际上可以综合成一点à表示当前对象!

 

 

this表示当前对象主要应用于一点:用于进行对象的比较

   注意点:封装访问

 

 

本章重点:

   this关键字的使用:this表示当前对象

this 调用本类中的属性

this调用本类中的其他方法

this调用本类中的其他构造方法,调用时要放在构造方法的首行


**************************我是分隔线**************************


 

回顾:

   栈内存 保存的是对象的名字

   堆内存 : 对象的具体内容(属性)

   全局代码区 : 所有方法

 

问题?

   如果我想表示一个属性,这个属性是所有对象都必须具有的,那该怎么办?

 

在类中写一个属性,如果使用static声明,则表示此属性为共有属性,:所有对象都可以访问此属性.

全局数据区 : 存放static类型的属性

 

对于static类型的变量,最好是通过类名称修改,意味着使用static类型声明的属性或方法可以通过类名称直接调用:

   static属性

   static方法

 

静态方法不能调用非静态属性或方法

非静态方法可以调用静态属性或方法

  

 

代码块:四种代码块

普通代码块: 是写在一个方法之中的语句块

构造块: 是直接写在类中的语句块,构造块优先于构造方法先执行,执行多次

静态块: 是直接写在类中的,通过static声明的语句块,优先于构造块与构造方法先执行,作用是为静态属性初始化,执行一次

同步代码块(多线程):

 

 

理解main方法

public:
表示此方法为公共的,可以被外部方法.

static:
表示此方法为static方法,可以被类名直接调用.

void:
表示此方法无返回值

main
系统规定的方法名称

String args[]
表示运行时参数

 

类在运行的时候要使用main方法,main方法应该被外部所看见,所以此方法声明为public

 

 

程序运行时输入的都是类的名称,证明使用类名称调用方法 à static类型的方法

String args[]:表示运行时输入的参数

   参数的输入:java 类名称 参数一,参数二,参数三

 

 

编写一个Person,类中的内容有程序运行时输入,Person里面包括一个名称和年龄

 

 

方法:能不能使用一个方法将String类型的数据变成int类型,通过包装类

java中有一种思想:一切皆对象,一切的操作都有对象

 

 

问题:基本数据类型是对象吗?--> 与一切皆对象不相符

提供了一种对于基本数据类型的包装类:8种基本数据类型

 

 

类型

包装类

int

Interger

char

Character

float

Float

double

Double

byte

Byte

short

Short

long

Long

boolean

Boolean

将字符串变为整型 --> String --> int

Integer.parseInt(String param) --> int类型

 

System.exit(1); // 程序退出,不再向下执行.

 

问题:不通过main方法,打印出Hello World!!!

提示:使用static

 

 

 

 

 


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java基础学习笔记 # 一、Java简介 Java是一种面向对象的编程语言,由Sun Microsystems(现在是Oracle)于1995年首次发布。它具有跨平台的特性,可以在不同的操作系统上运行。Java语言被广泛应用于开发各种类型的应用程序,包括桌面应用、Web应用、移动应用等。 # 二、Java基本语法 ## 1. 变量与数据类型 Java是强类型语言,每个变量必须先声明后使用。Java提供了多种数据类型,包括基本数据类型(整数、浮点数、字符、布尔值)和引用数据类型(类、接口、数组)。 ## 2. 运算符 Java提供了多种运算符,包括算术运算符、关系运算符、逻辑运算符等,用于进行各种数学或逻辑运算。 ## 3. 控制流程 Java提供了多种控制流程语句,包括条件语句(if-else语句、switch语句)、循环语句(for循环、while循环)、跳转语句(break语句、continue语句)等,用于控制程序的执行流程。 ## 4. 方法和类 Java中的方法用于封装一段可重复使用的代码,可以带有参数和返回值。类是Java程序的基本组织单位,包含了属性和方法。可以使用关键字class定义一个类,通过实例化类的对象来调用其方法。 # 三、面向对象编程 Java是一种面向对象的编程语言,面向对象编程的核心概念包括封装、继承和多态。 ## 1. 封装 封装是将数据和行为打包成一个类,通过访问修饰符(public、private等)控制对类的成员的访问权限。 ## 2. 继承 继承允许一个类继承另一个类的属性和方法,并且可以通过重写来修改或扩展继承的方法。 ## 3. 多态 多态允许通过父类类型的引用来引用子类对象,实现对不同子类对象的统一调用。 # 四、异常处理 Java提供了异常处理机制,用于处理程序中的错误情况。异常分为可检查异常(checked exception)和不可检查异常(unchecked exception),可以使用try-catch语句来捕获和处理异常。 # 五、Java标准库 Java标准库提供了大量的类和接口,用于完成各种常见的任务。其中包括输入输出、集合、多线程、网络编程等功能,可以大大简化开发过程。 以上是我学习Java基础笔记总结,希望对你有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值