java之面向对象

  省去中间一大堆基本数据类型和一些程序结构(循环,分支,选择结构)......这些都不会还学编程(开个玩笑哈)

我们进入到Java的最重要的思想就是面向对象部分。

  • 封装(最明显的就是将具体实现和具体数据部分隐藏,提供一个接口供使用)
  • 继承(相对于c++最明显的变化就是取消了多继承,这就真的少了好多好多问题啊,完全就不需要考虑到什么函数对什么函数的隐藏问题)
  • 多态(重载,扩展父类等都体现着多态)

  对于封装,继承,多态的作用我就不多多赘述了,网上一大堆博主写的都比我清楚,所以可以去看看他们的文章。

(以上一大堆废话省略.......进入正题)

学习概要:    

  1.说明一下那个标准类的制作,就是对数据部分采取private修饰符修饰,也就是只有类内的成员函数可以访问,所以我们提供getxx()和setxx()方法。

  2.学会查看API文档,这是必须要学会的,我们可以尝试去jdk汉化版的文档去查看,获取我们所需要的类对象等等,具体操作步骤(还没写),但大概过程就是索引找到我们所需要的类,进入该类查看各种函数,最重要的是看返回值,参数类型,函数作用,这样基本就可以掌握该函数的使用方法,再进阶一点就是学会看异常,什么情况下会抛出异常,当然现在谈异常还是早了。

  3.关于API文档这里再提一点:就是java.lang包下的类不需要导包,java.util下的类需要导包。

  3.学习string类之后,首先string有个类叫做length(),是不是很熟悉,有没有联想到数组也有这么个操作,arr.length,不过就是没有括号,就是因为数组不是一个类。

  4.除了基本数据类型外,其他的数据类型都是引用数据类型。

 

本次学习细节:

  1.==号比较的是两个引用类型的地址,如果地址一样就返回true,不一样就返回false。想要比较两个对象是否相等,我们需要用到一个函数叫equals(object),通过字符串对象来调用。

  2.对于字符常量,开辟之后会放在字符串常量池中,不会一直创建的。

1 public class tsst {
2     public static void main(String[] args) {
3         String s1="123";
4         String s2="123";
5         System.out.println(s1==s2);
6     }
7 }

以上代码输出结果是true,这里就关系到堆内存和栈内存了,字符串池是在堆内存中的,其实就是说明s1和s2的内存地址是相等的。(是不是很神奇啊)

今天就更新这么多了拜拜。

(欢迎指正!!!!!!)

posted on 2021-11-05 16:40  Krcoding  阅读(33)  评论(0)    收藏  举报