天仓雪 天仓雪
关注数: 439 粉丝数: 197 发帖数: 46,158 关注贴吧数: 245
向吧里想考日语职业技能证书的人推荐。。 J.TEST怎么说呢能力测试过热了JTEST可以说比能力测试更加偏重于企业选员工时的一个标准而且它不象能力测试1,2,3,4这样只能报一级,过不去就什么也拿不到而是分好几个层次一份卷子答完,怎么也会有个评定证书象鸟啊,打算自学点东西来增加就业筹码的人看看吧11月5日,第69回考试在全国的考试顺利结束。 J.TEST自03年从上海首次举行后,持续发展.报考人数不断增长,本次考生已超过6千人.是去年同期的188%以上.考试地区含盖了全国18个省、直辖市共计28个地区. 随着考试影响的不断扩大,越来越多的日资企业对J.TEST有了更深的了解.由企业出资要求员工参加考试的单位也大副增加.其中不乏有许多世界500强的大公司.参加本次考试的企业有瑞萨集成电路设计(北京)有限公司、东电电子(上海)有限公司、小松山推工程机械有限公司、凸版印刷(深圳)有限公司、首钢日电电子有限公司、电装(中国)投资有限公司、无锡松下电池有限公司、上海山武川仪环境控制技术有限公司、株式会社日气上海事务所等数十家企业。 根据对各企业参加J.TEST考试目的的了解,基本上可归纳为: 1.招聘新员工. 2.企业内级别,工资等调整的依据. 3.选拔去日本进修人员. 4.对员工进行针对性的培训. J.TEST考试对其日语托业的功能正在快速地发挥其应有的作用.
JAVA 30个基本知识 1.OOP中唯一关系的是对象的接口是什么,就像计算机的销售商她不管电源内部结构是怎样的,他只关系能否给你提供电就行了,也就是只要知道can or not而不是how and why.所有的程序是由一定的属性和行为对象组成的,不同的对象的访问通过函数调用来完成,对象间所有的交流都是通过方法调用,通过对封装对象数据,很大限度上提高复用率。      2.OOP中最重要的思想是类,类是模板是蓝图,从类中构造一个对象,即创建了这个类的一个实例(instance)。      3.封装:就是把数据和行为结合起在一个包中)并对对象使用者隐藏数据的实现过程,一个对象中的数据叫他的实例字段(instance field)。      4.通过扩展一个类来获得一个新类叫继承(inheritance),而所有的类都是由Object根超类扩展而得,根超类下文会做介绍。      5.对象的3个主要特性      ehavior---说明这个对象能做什么。      tate---当对象施加方法时对象的反映。      dentity---与其他相似行为对象的区分标志。      每个对象有唯一的indentity 而这3者之间相互影响。      6.类之间的关系:      use-a :依赖关系      has-a :聚合关系      is-a :继承关系--例:A类继承了B类,此时A类不仅有了B类的方法,还有其自己的方法.(个性存在于共性中)      7.构造对象使用构造器:构造器的提出,构造器是一种特殊的方法,构造对象并对其初始化。      例:Data类的构造器叫Data      ew Data()---构造一个新对象,且初始化当前时间。      Data happyday=new Data()---把一个对象赋值给一个变量happyday,从而使该对象能够多次使用,此处要声明的使变量与对象变量二者      是不同的.new返回的值是一个引用。      构造器特点:构造器可以有0个,一个或多个参数      构造器和类有相同的名字      一个类可以有多个构造器      构造器没有返回值      构造器总是和new运算符一起使用      8.重载:当多个方法具有相同的名字而含有不同的参数时,便发生重载.编译器必须挑选出调用哪个方法。      9.包(package)Java允许把一个或多个类收集在一起成为一组,称作包,以便于组织任务,标准Java库分为许多包.java.lang java.util java,net等,包是分层次的所有的java包都在java和javax包层次内。      10.继承思想:允许在已经存在的类的基础上构建新的类,当你继承一个已经存在的类时,那么你就复用了这个类的方法和字段,同时你可以在新类中添加新的方法和字段。 11.扩展类:扩展类充分体现了is-a的继承关系. 形式为:class (子类) extends (基类)。      12.多态:在java中,对象变量是多态的.而java中不支持多重继承。 13.动态绑定:调用对象方法的机制。       1)编译器检查对象声明的类型和方法名。       2)编译器检查方法调用的参数类型。       3)静态绑定:若方法类型为priavte static final 编译器会准确知道该调用哪个方法。       4)当程序运行并且使用动态绑定来调用一个方法时,那么虚拟机必须调用x所指向的对象的实际类型相匹配的方法版本。       5)动态绑定:是很重要的特性,它能使程序变得可扩展而不需要重编译已存代码。      14.final类:为防止他人从你的类上派生新类,此类是不可扩展的。      15.动态调用比静态调用花费的时间要长。      16.抽象类:规定一个或多个抽象方法的类本身必须定义为abstract。      例: public abstract string getDescripition      17.Java中的每一个类都是从Object类扩展而来的。      18.object类中的equal和toString方法。
全世界所有程序员都会犯的错误 不管使用何种语言,全世界所有程序员都一定犯过这种错误,那就是:太依赖编译器,却不知道编译器做了哪些事。    一般来说,越高阶的程序语言,会提供越多语法上的便利,以方便程序撰写,这就俗称为syntactic sugar,我称其为「语法上的甜头」。虽说是甜头,但是如果你未能了解该语法的实质内涵,很可能会未尝甜头,却吃尽苦头。    不久前,我收到一个电子邮件,读者列出下面的Java程序,向我求救。看过这个程序之后,我确定这又是一个「全世界所有程序员都会犯的错误」。    // 程序1  class Singleton {   private static Singleton obj = new Singleton();   public static int counter1;   public static int counter2 = 0;   private Singleton() {   counter1++;   counter2++;   }   public static Singleton getInstance() {   return obj;   }  }    // 程序2  public class MyMain {   public static void main(String[] args) {   Singleton obj = Singleton.getInstance();   System.out.println("obj.counter1=="+obj.counter1);   System.out.println("obj.counter2=="+obj.counter2);   }  }    执行结果是:  obj.counter1==1  obj.counter2==0    你有没有被此结果吓一跳?乍看程序代码,你很可能会认为counter1和counter2的值一定会相等,但执行结果显然不是如此。其实,程序1被编译后的程序应该等同于下面的程序3:    // 程序3  class Singleton {   private static Singleton obj;   public static int counter1;   public static int counter2;   static { // 这就是class constructor   // 在进入此class constructor之前,class已经被JVM   // 配置好内存,所有的static field都会被先设定为0,   // 所以此时counter1和counter2都已经是0,且singleton为null   obj = new Singleton(); // 问题皆由此行程序产生   // counter1不会在此被设定为0   counter2 = 0; // counter2再被设定一次0(其实是多此一举)   }   private Singleton() { // 这是instance constructor   counter1++;   counter2++;   }   public static Singleton getInstance() {   return obj;   }  }    这是因为:当class具有static field,且直接在宣告处透过「=...」的方式设定其值时,编译器会自动将这些叙述依序搬到class constructor内。同样地,当class具有instance field,且直接在宣告处透过「=...」的方式设定其值时,编译器会自动将这些叙述依序搬到instance constructor内。    此程序在class constructor内,还未将static field初始化时(这时候,counter1和counter2都是0),就呼叫instance constructor,而instance constructor竟然还会去更动static field的值,使得counter1和counter2都变成1。然后instance constructor执行完,回到class constructor,再把counter2的值设为0(但是  counter1维持不变)。最后的结果:counter1等于1,counter2等于0。    欲改正程序1,方法有三:    -方法一:将singleton field的宣告调到counter1与counter2 field之后。   这是最好的作法。  -方法二:将counter2=0的宣告中,「=0」的部分删除。这种作法只有在希望  -方法三:将初始化的动作搬到class constructors内,自行撰写,而不依赖   编译器产生。这是最保险的作法。    如何避免犯下「全世界所有程序员都会犯的错误」,我给各位Java程序员  的建议是:  -熟读Java Language Specification  -在有疑问时,使用J2SDK所提供的javap来反组译Java Bytecode,直接观察  编译后的结果。    下面是我用javap来反组译程序1的示范:    C:>javap -c -classpath . Singleton    Compiled from MyMain.java  class Singleton extends java.lang.Object {   public static int counter1;   public static int counter2;   public static Singleton getInstance();   static {};  }    Method Singleton()   0 aload_0   1 invokespecial #1    4 getstatic #2    7 iconst_1   8 iadd   9 putstatic #2    12 getstatic #3    15 iconst_1   16 iadd   17 putstatic #3    20 return    Method Singleton getInstance()   0 getstatic #4    3 areturn    Method static {}   0 new #5    3 dup   4 invokespecial #6    7 putstatic #4    10 iconst_0   11 putstatic #3    14 return    其实Java的syntactic sugar并不算多,C#的syntactic sugar才真的是无所不在,  也因此C#的初学者更容易犯了「全世界所有程序员都会犯的错误」。许多C#的书都会一边介绍C#语法,一边介绍编译之后MSIL(.NET的中间语言,类似Java的Bytecode)的结果,然而Java的书却鲜少这么做。    虽说是「全世界所有程序员都会犯的错误」,但是这不代表你犯了此错误之后,仍可以同爱借钱的曹启泰一般地「抬头挺胸、理直气壮」。只要有心,其实这一类的错误仍是可以避免的。      
新手入门之如何掌握Java(J2SE篇) 新手入门之如何掌握Java(J2SE篇)本文是另外一篇文章《如何才算掌握Java(J2SE篇)》(后面简称标准篇)的姊妹篇,提出了标准,但是不告诉新手如何才能达到那个标准似乎说不过去。   首先需要说的是达到这个标准是比较困难的,没有三年的时间一般是不可能的,没有实际的项目的经验的熏陶也是不可能的,下文会说明为什么。然后给出两个宝典:一个就是TIJ(Thinking in Java),另外一个就是chm格式的JDK的API。 TIJ可以看看(javaresearch.org/download/thread.jsp?thread=21158 )Java编程思想(完整的中文简体第二版),如果英文可以的话强烈要求看英文原版,而chm格式的JDK的API的下载地址可以看看javaresearch.org/forum/thread.jsp?column=61&thread=4921 Cherami站长的推荐。虽然我没有把TIJ看完(我开始用Java做项目的时候TIJ还没有出来),但是我浏览过目录和看过一些章节的内容,感觉作者对Java非常的熟悉,实际经验也非常的丰富,很多内容一看就是经验之谈。  需要说明的是,我说的看包括内容和领会作者的意思,如果用Java做过一些项目以后你再回头看看TIJ你会发现如果你刚开始就记得并掌握了TIJ所讲的内容后会对的项目有多大的帮助。  掌握TIJ的内容至少可以达到标准篇中所讲的语法、思想以及规范的标准,对于API的掌握也有很大的助益。之所以需要chm格式的JDK的API是因为JDK的API实在是很大,个人认为不大可能记得那么多,而站长推荐的那个API可以非常方便的根据类名或者方法名查到对应的说明,有时候我们就是大致记得应该用哪个类或者某个方法,但是忘记了具体的细节,这个时候就可以查那个东东了,我现在已经养成先把那个chm打开再开始做事情的习惯了。  需要提醒的是你不能完全依赖它,有些东西还是需要自己记的,如果你都不知道要用什么你怎么去查呢?你至少要记得一个索引,哪个类或者方法可以完成什么样的功能的索引。接下来就是实际项目的熏陶了。如果你不做applet,你就不会去用appletviewer和HtmlConverter,如果你不打包你就不会用jar,如果你不做类库你可能就不会用javadoc,如果你对系统的运行性能不关心你可能根本不会考虑使用javap,如果你不做独立运行的程序你可能根本就不会注意到我们有时候是多么的讨厌那个多于的dos窗口而用javaw代替java来运行你的程序,如果你没有做过国际化,你怎么可能去使用native2ascii进行转换编码呢,如果你没有做序列化并且升级你的类你是不会知道你为什么需要serialver的。而离开了这些命令或者说工具,你可能不知道java到底都能做哪些内容。这些命令都是基于命令行的,对于习惯的图形界面的新时代来说可能会很不习惯,但是你必须知道在命令行下如何使用他们,因为很可能你真正项目中需要运行的环境就是一个命令行(UNIX/Linux服务器)。  在开发一个实际的系统的时候,你不可能使用editplus或者notepad或者vi或者emcs写代码,因此你必须有一个你熟悉的IDE工具,这样你才能管理庞大的工程,而这些IDE工具不可能仅仅用来做编辑器,你可能更需要的是使用他们的调试功能追踪疑难杂症(如何设置各种断点,特别是在循环里面设置条件断点),另外就是他们的代码提示功能以及集成的版本控制功能。  实际项目对API的掌握也是一个莫大的考验,真正的项目的工期都会比较紧凑,因此要完成什么功能需要使用什么那些类以及如何完成都是对你对API掌握情况的真正考验。如果你没有做过需求频繁变更的项目,那你很幸运,但是实际情况往往不是这样。你修改代码以后以为没有问题了,你往往只是测试了你眼前的部分,但是其他的部分怎么办?难道都要我测试一下,天哪!是的,情况往往就是这样的,因为需求变更导致的回归错误可能是我们最大的噩梦!如果你的代码结构良好,那么你可以使用JUnit编写单元测试用例来保证你的修改对各个部分的接口没有造成不良的影响。  一个符合OO的系统应该也是一个易于测试或者易于编写单元测试用例的系统!如果你没有完整的参与过一个项目,你不会知道拷贝文件、发布版本、打包、生成javadoc、运行测试用例、版本维护、建立里程碑、建立基准版本、增量更新版本是多么痛苦的事情,但是如果你使用Ant编写一个脚本帮你完成这些项目必须而又琐碎的事情,你会觉得其实开发项目有时候也是很轻松的。  一旦你经历了这些项目的真正的磨难的时候,你看到错误信息的时候就不会手忙脚乱了,你可以很清楚的知道是哪个地方出问题了,可能的原因以及解决方法是什么。没有遇到问题,你就不会学会解决问题,你也就不可能提高!  最后总结一下:掌握TIJ,你对Java的语法、API、思想和规范会有一个比较好的基础,而通过实际项目的锻炼,你对API会更熟悉、你也会掌握那些基本的命令在命令行下怎么用,怎么选用一个IDE以及最重要的:如何排错、调试程序、测试程序以及使用工具让电脑完成那些琐碎的例行工作。   以上只是个人的一点看法,希望对于那些迫切的想掌握Java的新手有所启迪和帮助。
辞职问题,我虾米了。。 大家都是如何辞职的?递交辞职申请要慎重 发布日期:2006-06-11浏览次数:561  大家可能多次面对离职,大家都是如何辞职的?如何辞职更正确,大家可以讨论一下!从我个人的经历看,如何辞职确实要慎重。如何合同未到期,自己主动提出辞职,这个属于违约行为,当初从snda离职时深有感触。大家可以讨论一下,如何辞职能更大的保护我们的利益!下面是专家的意见:   “笔者在实践办案中,涉及到员工辞职的案件时,最大的感触,就在于员工在递交辞职申请时,过于轻率了。   很多员工辞职,真正的原因是比较复杂的。有的是找到了更好的单位,有的是在原单位工作不顺心,还有的是原单位的很多做法是违法的,个人生存都成了问题。但是多数员工在递交申请时,在辞职申请上,所写明的原因,最多的是“因为个人原因,特向公司提出辞职申请”,这是最多最常见的一个理由。   多数员工在解释这一行为时,一般都说这样做比较委婉,不伤单位的面子,利于友好解决与单位之间的争议纠纷。笔者不否认这样的一个理由,确实有这样的作用,但是这样做本身,实在已经置员工自己于“他为刀俎,我为鱼肉”的一个境地。   这样的一个辞职申请,确定无异的一个后果是员工的行为是一种违约行为,如果合同约定有违约责任的话,要责无旁贷地承担了。不可能再罗织任何的理由,不可能再补充任何的理由,不可能再重新回到真正的离职原因中去。   我们不知道,到底有多少员工依据这样的理由辞职,顺利解决了问题。但是我们知道,不知道有多少员工,在仲裁或者诉讼时,面对单位举出的这样一份辞职申请,面对自己当时的亲手书写,亲笔签名,强口争辩时,得到的却是法官或者仲裁员的一句质问:为什么你当时不写上你说的这些情形呢?哑口无言!在面对后来的仲裁结果或者法院判决时,欲哭无泪!对此,我们只能感到深深的悲哀与无助的同情。   我们知道,调解、友好解决,始终应该是一个方向。就象从国家大事上,解决香港澳门台湾问题一样,我们国家的方针无论当初对香港澳门,还是今日对台湾,始终把友好和平解决作为上上策,而且为之付出不懈的努力。但是,又何尝放弃过主权的保障呢?又何尝放弃过战争的底限呢?职场如兵场,调解和平解决,不以投降为方式。 而在于我们看来,递交那样一个理由的辞职申请,无异于已经向公司投降,任由公司宰割了。碰到仁义的公司,也就算了,碰到规范的或者不怎么仁义的公司,就有可能会家破(人亡就不会了)。   我们只建议,在离职这样一个敏感的过程中,要懂得抢占制高点,抢占对自己最有利的地势。拿到对自己有利的东西,不是为了伤害别人,不是为了伤害单位,而是为了保护自己。   我们希望,真的希望,以后在办案中,接触到这种辞职理由会越来越少。真的不愿意再去看那些无助的面孔了。 另外,员工对于这种问题的认识存在还存在这样一个误区:我已经提前三十天通知单位,还是违约吗?对于这个问题,我们一并作答如下:   这是一种十分法盲的认识。(不要在意说话重了)   《劳动法》第三十一条是赋予了员工可以通过提前三十天通知的方式提出辞职,但是同时,劳动部又下专文解释这种规定本身只是赋予了员工辞职的权利,但是同时也确认,这种行为是一种违约行为,如果合同中约定有违约责任或者赔偿责任的话,员工仍然要承担。   《劳动法》实施那么多年了,各大网站各大论坛各地仲裁机关以及法院,不知道依据这样的情形判决仲裁了多少这样的案件,不知道已经有多少员工,因为轻率离职付出了几万几十万甚至上百万的赔偿。随便GOOGLE一次,就有数百个案例跳入你的眼球。如果作为一个员工到现在还不知道这一点,实在无异于不知道杀人者要负刑事责任一样在法律上无知。”
首页 1 2 3 4 下一页