1、什么是属性?有几类属性?

属性是用于修饰或者对对象拥有的某一个基础名词,如颜色,年龄。

目前java有的是

静态属性

跟着类初始化,在所有的类的实例化对象内都可以取到,存放在方法区内。和应用程序的生命周期相同。

对象属性

跟着对象初始化,在创建的对象内才可以取到,存放在内存的堆中。随着GC的回收而销毁。

局部变量

跟着方法初始化,在方法内部才可以取到,存放在内存的栈中。当方法运行完后就会被销毁。

2、属性的修饰词

private 修饰后为私有属性,仅当前类可以使用,子类不可使用不可继承

缺省修饰 仅本类和同包下可以调用

protected 子类可以使用,同包可以使用,本类可以使用

public 所有类可以使用

3、为什么需要不同的修饰词

private 私有属性,意味着其他类不能随意的修改,要修改只能通过其他方式,如提供方法进行获取,如果说这个属性是不变的属性,而其他类有权限对其修改的话,那么意味着这个属性就会变化,如果我们只提供一个获取值的方法,那么这个就能保护好了

对于 余下的修饰符来说,也就是权限不一样,主要还是根据继承以及封装特性来进行权限的分级。

4、final 修饰的属性

final修饰的属性是不可变的属性

5、什么是方法?有几类方法?

方法就是解决问题的一种方式。传入参数,对参数处理后得到一个最终的结果,或者没有结果产生,中途对某些东西进行了修改。

目前java有的方法:

静态方法:

跟着类一起初始化,可以使用class对象来调用。

抽象方法

没有具体实现的方法,更多的是一种规范。

普通方法

普通的实现方法,处理一段逻辑。

构造方法

初始化某一类数据的方法,如类的构造方法,以及属性的构造方法

6、方法的入参

方法的入参是处理一段逻辑所需要的一系列所需。

推荐方法最多传4个入参,如果入参太多可能意味着你方法的颗粒度还太大,可能不太符合单一职责原则,对于后续维护不太友好。

方法的传参问题?都是值传递。

方法传参,参数可以是对象,那么就有一个问题,对象是有值和指针的,那么传入的参数进行了修改后,到底改的是入参的指针还是值呢?

可以分为三类:

入参为普通的数据类型,会将原有的数据复制一份传到方法内,方法修改不会造成原有数据的改变。

入参为String以及包装类,也会新建一个新的对象,因此方法修改不会造成原有数据的改变。

入参为引用类型,会复制一个新的地址传给方法,当给地址对应的对象进行修改,那么对象的值会被修改,但是如果此时如果新建一个新的对象,将新的对象赋值给入参,由于入参是复制的地址,当方法运行结束这个复制的地址引用会被删除,这样原本的对象的地址是没有变的,因此也不会指向方法内新建的对象的。所以可以说这里也是值传递,传递的是地址的值,而不是地址的引用。

7、方法的返回

方法不一定非要有返回值

如果有返回值,那么方法必须返回一个值

java对象中的属性,方法相关推荐

  1. 判断一个java对象中的属性是否都未赋值_100道Java基础面试题(一)

    100道Java基础面试题(一)未来大家将步入职场,面试的时候面试官还会问大家一些Java相关的问题.小编整理出100道非常实用的面试题目,可以帮助双体的小伙伴应对面试,我们一起来看看都有哪些吧! 1 ...

  2. 移除Java对象中的属性_移除/添加 JSON对象中的某个属性

    因为JSON完全是动态的,所以给一个JSON对象添加一个属性是很简单的,如: var json = {}; json.username='xtayfjpk'; 这样就为json对象添加了一个名为use ...

  3. 移除Java对象中的属性_在java对象中添加和删除属性

    我怎样才能在 java中实现这一点.我有一个具有属性的对象. public class Object { private final Credentials Credentials; private ...

  4. python五十七:str与repr,类似于 java对象中的tostring()方法

    class Foo:def __init__(self, name, age):self.name = nameself.age = agedef __str__(self):return (&quo ...

  5. 遍历java对象中的属性

    public static void Reflect(Object obj) throws NoSuchMethodException, IllegalAccessException, Illegal ...

  6. Java:比较两个对象中全部属性值是否相等

    点击关注公众号,实用技术文章及时了解 来源:xiaoer.blog.csdn.net/article/details/85005295 例如下述Java类: import java.io.Serial ...

  7. 自己实现java I/O中的BufferedReader对象中的raedLine方法

    import java.io.*; /* readLine方法的原理是将除回车符以外的字符全部存储到一个字符数组中(本例中用StringBuilder代替),等到读完一行后将其返回 自己编写一个Buf ...

  8. python封装:隐藏对象中的属性或方法(三分钟读懂)

    封装:隐藏对象中的属性或方法 隐藏对象中的属性 隐藏:- 将对象的属性名,修改为一个外部不知道的名字 我们使用时,有特殊方法来处理获取(修改)对象中的属性 获取(修改)对象中的属性 需要提供一个get ...

  9. 使用 history 对象和 location 对象中的属性和方法制作一个简易的网页浏览工具

    查看本章节 查看作业目录 需求说明: 使用 history 对象和 location 对象中的属性和方法制作一个简易的网页浏览工具 实现思路: 使用history对象中的 forward() 方法和 ...

最新文章

  1. 拨出网线后,网卡IP丢失
  2. 删库造成损失 0.87 亿,微盟程序员被判6年!
  3. 使用CSVDE批量导入命令/出口AD用户
  4. click() bind() live() delegate()区别
  5. python、java大作战,python测试dubbo接口
  6. Pv6报头结构以及与IPv4的比较
  7. c语言代码中调用系统命令行.sh shell脚本,linux shell system传参
  8. 小工具—系统API应用
  9. 科大讯飞:5年内 科技会场没机器人端茶倒水就太low了
  10. android mds文件,安卓手机如何打开.mdf文件
  11. Adobe FLASH CS6 安装错误解决方法
  12. Freemarker数字格式化总结
  13. 我的世界服务器物品怎么上锁,我的世界怎么给箱子上锁_我的世界箱子上锁指令用法及解锁方法_玩游戏网...
  14. 进制转换--(2-8)为什么2的3次方=8,所以三位变一位
  15. java中怎么调用对数函数_Java对数函数及其运算方法
  16. python电话号码对应的字符组合_Python3 两种方式查找字符串里的电话号码
  17. 单片机c语言报错_asm啥意思,SPMC75系列单片机地C和ASM( - 控制/MCU - 电子发烧友网...
  18. 关于SQL的一点学习
  19. 如何使用微信开发者工具调试前后端接口
  20. 高等数学中必须掌握的基础知识(一)

热门文章

  1. 数据拟合的最小二乘法 python实现
  2. mupdf实现常用图片转换为灰度图pnm
  3. Word处理控件Aspose.Words功能演示:使用 C++ 创建 MS Word 文档 (DOC/DOCX)
  4. 屏幕后期特效——模糊
  5. N-121基于微信小程序网上书城系统
  6. 快速开发平台之---代码加速器
  7. 毕业聚会(java)
  8. 使用 tslib 库
  9. kf真空接口_常见的三种真空法兰规格(CF、KF、ISO)区别
  10. 81条生活小常识大放送 看看哪些你不知道的 - 生活至上,美容至尚!