【 在 callmebbser (BBSer) 的大作中提到: 】
: 标 题: Re: 我觉得图形化幼儿编程是扯淡
: 发信站: 水木社区 (Thu Apr 2 12:16:53 2020), 站内
:
: 类的概念一次课就可以讲完学会了啊。
:
: 只要讲明Java程序的基本单元是类class,C语言的函数不能单独存在,只能存在于类里
类是太刻意为之的artifact,不适合入门
: 面。因此,C语言的main函数得用一个类来装,这个类就是程序(软件)执行的入口。而
因此为何要提到C语言?还不是因为有C语言的类,然后把main套壳然后指向了类的入口?
可是基础课上为啥讲这么刻意的玩意?
: 在IDE里,创建一个类不就是一个点击再加输入名字,最后回车就出来了?
还不如拿浏览器,console自带REPL
:
: 小作业小程序的代码,不就是直接在main函数里从头写到尾? 跟C语言程序几乎没有差
: 别。
那也不如REPL的脚本或者C
:
: 学过C语言,再学Java,把类当做可以包含函数的结构体来理解,哪有难度。
那要先学C
:
: package不就是文件目录位置的一个别称嘛。
:
: reference,在Java里只有reference,不讲也不耽误使用Java。
:
: public、private的差别,只要不管三七二十一,统统先用private修饰,需要用到哪个
: ,再改为public。这样就好理解public的公开是什么回事了。而对类成员变量(字段)
: ,则是统一用public的getter和setter方法来访问,不修改字段的private。若是学生不
: 理解为什么不直接public存取类成员字段,只要举个User类的年龄age字段或者Student
: 类的成绩score字段的例子就可以了。
:
: 若是直接public存取,给设置个负值,不符合常理,怎么办?这时setter方法的设值把
: 关作用就体现出来了。
这些都是工程上的复杂性问题,不是入门基础需要考虑的
:
: 年龄是会随时间增长而增加的,若是直接public存取age,就会今年是20岁,明年还是2
: 0岁。而通过getter访问,就可以通过生日计算出今年或明年的年龄了。
这跟setter/getter有关系么?
:
: static就按照英文字面的静态意思理解静止不动就可以了。某个类生成了N多个变量,类
: 里的不是static的字段都跟着生成的N变量一起走了,各个变量的这个非static字段都是
: 克隆出来的独立个体,因此N个变量就有N个的这个非static字段。而static字段,是赖
: 在类里静止不动的,没随那N个变量私奔的。因此,这N个变量的这个static字段,不是
: N份,是只有1份,而且还是保存在类那边的,不在变量这边的。
讲这些工程相关的玩意不如谈谈LISP、函数式,咖喱,或者修修摩托车。
:
:
:
: 【 在 cwall (宝塔) 的大作中提到: 】
: : 我的意思是,java的概念太多了
: : 上来先说class, object, 再说package, 然后就是reference
: : 还有public, private, static,
: : ...................
:
: --
:
: ※ 来源:·水木社区 newsmth.net·[FROM: 58.23.246.*]
--
FROM 36.106.167.*