Introduction to Java and Android 1-My failed interview trip

Source: Internet
Author: User

Objective

Although I have been hired by ASUS Research Center, only to wait for the three-party agreement to Asus, but I am still a restless, in the process of learning Java, I also went to the Cheng Mai interview, just to try to see these outsourcing companies in the end what kind of? We need these undergraduates what kind of ability, and then after I finished their pen test, and then participated in their interview, the interviewer may be temporarily pull over the interview ~ ~ ~ Old Feeling he was not very happy ~ ~ ~ Then the interviewer began to ask me various questions, what polymorphic, what Android source code you have seen ~ ~ ~ Basic I was asked to fall, to know that I was just beginning to self-study Java and Android, Ah, you ask me this, let me tell you in detail? Then he read my resume, said you are how to statistics code amount, know what is the amount of code do not? I said according to my understanding is I write code AH ~ He is a person of the company a day effective code up to 500 lines, you come up with such a resume is not afraid of others jokes, well, the interviewer is really the big God, but the first job of the interviewer, if I also work for a few years of people certainly will not make such a mistake? Man, I always feel that we should leave some posterior, right? What if we are co-workers in the future? However, I am very grateful to you, let me see enough of their shortcomings, I began to reflect on myself, the interviewer pointed out that since you know the use of sqlit3, you should know that the database is how to achieve, yes, I learned a little here, that is I really did not go deep to understand what I learned, Should be more in-depth study, isn't it?

I was probably starting to slack off when I got an offer from Asus, which I had to admit, because I found that my mind had not been able to explain my understanding in a very professional terms as it had begun, and that I could only use my own words to explain my understanding. But I still like to go to my own understanding, so I forget a lot of terminology, left some of their own understanding!

Object-Oriented Fundamentals

Have to say, object-oriented is our most mainstream programming language, relative to the process-oriented C language has too many advantages, object-oriented has 3 major features, this is often tested a face test bar, of course, I mean the technical side Oh! The most important thing is that the interviewer deliberately singled out a feature we often overlooked and asked us-abstract, this is a feature from C + +, I'm not very familiar with C + +, but rarely mentioned in Java and C #.

At that time I was asked what is abstract, I answer: We write the code is the specific characteristics of the common characteristics of the extraction, abstract into a class! Later I also checked the information, others said:

1, object-oriented itself is an abstract ability.

2, the data structure, the algorithm for the machine to abstract.

3, object-oriented to people to abstract.

{

Abstract:

Abstract class definition: A class that cannot be instantiated
Abstract method: The implementation of the method is determined by the subclass, in the parent class we declare the method as an abstract method
Keywords: abstract
If you declare a method as an abstract method, there are only two results:
1, a class must also be declared as an abstract class, and if a class contains an abstract method, the class must also be abstract.
2, any subclass must override the abstract method, unless the subclass itself is abstract

}

Here are three main features:

(1) Inheritance:

My understanding: Two classes have some of the same attributes, subclasses can have the attributes of the parent class, and subclasses can have their own attribute methods, which is different from the parent class! (My imagination is that the son can inherit Lao Tzu's property, but the son can also create his own wealth, there is no father in the world to inherit the property of the son of the situation bar ~ ~ ~)

Terminology: Inheritance is a hierarchical model of a junction class and allows and encourages the reuse of classes, which provides a way to articulate commonalities. A new class of objects can be derived from existing classes, a process known as class inheritance. The new class inherits the attributes of the original class, which is called the derived class (subclass) of the original class, and the original class is called the base class of the new class (The parent Class). Derived classes can inherit methods and instance variables from their base classes, and classes can modify or add new methods to make them more suitable for special needs.

(2) Package:

My understanding: encapsulation, is encapsulation ah, some you do not want to expose to be seen by the package, do not give other people directly to use, to prevent errors, to modify the words must pass the Get\set function (I do not know whether I understand this right, but the interviewer think I know some fur, began to ask me what the role of the base class ~ ~, well, I really did not study, it seems that the content of C + +, it seems I have to take a good look at C + +)

Terminology: encapsulation is the process and data is surrounded, access to data only through the defined interface. Object-oriented computing begins with this basic concept that the real world can be portrayed as a series of fully autonomous, encapsulated objects that access other objects through a protected interface.

(3) Polymorphism:

My understanding: In fact, in the project, I use the least is polymorphic, in addition to arraylist<string>, I really do not know what it is used to do? I understand the multiple states of a class or Object! The interviewer knew from my mouth that I did not have much experience in this area, specifically let me write a polymorphic use of,list<string> = new arraylist<string> (), when my brain is a blank, do not know how I should write, so blind to write, He asked me if I knew why I was using list to pick up. What's the effect? It means I really don't know. So far I have not understood the true intent of polymorphism, knowing that it can enhance the extensibility of the code ~ ~

Terminology: polymorphism refers to allowing objects of different classes to respond to the same message. Polymorphism consists of parameterized polymorphism and inclusion polymorphism. Polymorphism language has the advantage of flexibility, abstraction, behavior sharing and code sharing, which solves the problem of application function with the same name.

Getting Started with Java

Below I will introduce some of Java's introductory knowledge, but also as my own in the course of the note, but my update may be relatively slow, because I am also in the study of ARM9, not a lot of time to complete the finishing, I just carry out some of the points I think I encountered in the study to refine it out to everyone, I think I write something should be suitable for those who have a bit of basic people ~ ~

First of all, I am in the face of the bool variable, Java is a Boolean this is not the same place as C, the array of words int [] a = new int [] {1,2,3,4}, declaration and initialization is also very different from C Oh! Then the flow of control, circulation, and so on, I will not say it all, this really is the million change in it!

Well, I wrote here today, find time I continue to write, persist in writing a series of, at the same time I also hope that everyone concerned about my microblog Oh!

MSP Wang Ningbin Asus

Http://weibo.com/samuelwnb

Of course, you can also email me to contact:[email protected]

Introduction to Java and Android 1-My failed interview trip

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.