ÀÚ¹Ù °£´ÜÇÑ »ý¼ºÀÚ Áú¹®µå·Á¿ä.

   Á¶È¸ 4304   Ãßõ 0    

 class Con3{
    public int aa;
    public int bb;
    public int cc;
    public Con3(int a, int b, int c){
        this.aa = a;
        this.bb = b;
        this.cc = c;
    }
}
class test{
    public int aa;
    public int bb;
    public int cc;
}


public class ConstructorTest {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
       
        Con3 con = new Con3(10,20,30);
        System.out.println("생성자를 이용한 객체 변수 초기화 aa값"+con.aa);
       
        test te = new test();
        te.aa = 10;
        System.out.println("생성자를 이용하지 않고 객체 변수 초기화"+te.aa);
       
       
       
    }
}

조건: 객체 변수에 값을 저장하려고 합니다.

질문1 : 생성자를 통해서 객체 변수에 값을 지정하는것이 빠른지, 

아니면 객체를 생성하고나서 곧바로 객체변수를 호출하여 값을 넣는것 중에서 어느것이 효율적이고 빠른지 궁금합니다.

질문2: 생성자는 리턴값을 void라고 지정하면 안되는건가요? 

        리턴값 지정은 메소드에서만 사용 가능하기에 생성자에서는 사용못하는건가요? 이것이 메소드와 생성자의 차이점인가요?

       생성자의 기능인 객체의 초기화가 정확하게 어떤것을 의미하는건가요? 객체 변수에 값을 넣는다는 건가요?


자바를 독학으로 하고 있습니다. 초보자라 많은것이 부족하고 궁금한점이 많습니다. 도움주시면 감사하겠습니다.

ªÀº±Û Àϼö·Ï ½ÅÁßÇϰÔ.
1. ¼Óµµ´Â Â÷ÀÌ.¾ø½À´Ï´Ù.
¹®Á¦´Â °´Ã¼ÁöÇâÀûÀ̸Ï.¾Æ´Ï³ÄÀÇ.Â÷À̰¡ ÀÖ½À´Ï´Ù.

2. void´Â ¸®ÅϰªÀÌ ¾ø´Ù´Â ÀÚ¹Ù ¹®¹ýÀÇ ¾à¼ÓÀÔ´Ï´Ù.

2.1 °´Ã¼ÀÇ »óŰª(º¯¼ö) ¸¦ ¼³Á¤(¼ÂÆÃ) ÇØ ÁذɷΠÀÌÇØ ÇÏ½Ã¸é µË´Ï´Ù.

P.s ÇØµåÆÛ½ºÆ® ÀÚ¹Ù¶õ Ã¥À» ±¸ÀÔÇØ¼­ º¸½Ã±æ ±ÇÇÕ´Ï´Ù. ±×¸²¸¹°í ±ÛÀÚ Àû°í ±Û¾¾µµ Å­´Ï´Ù. µ¶ÇÐÀ¸·Î ÇϽŴٸé ÀÌÃ¥ÀÌ °¡Àå ÁÁ½À´Ï´Ù.
1. ´ë¼¼¿¡ ¿µÇâÀ» ÁÖÁø ¾ÊÀ¸³ª »ý¼ºÀÚ¸¦ ÅëÇÏ´Â °ÍÀÌ ºü¸£¸ç ±×·¸°Ô ¾²¶ó°í ¸¸µå´Â°Ô »ý¼ºÀÚÀÔ´Ï´Ù.
2. »ý¼ºÀÚ¿¡´Â ¸®ÅÏŸÀÔÀ» ÁöÁ¤ÇÏÁö ¾Ê´Â°Ô ¸Â½À´Ï´Ù. »ý¼ºÀÚÀÇ ¿ªÇÒÀº °´Ã¼¸¦ À§ÇÑ ¸Þ¸ð¸® °ø°£ÀÌ ÇÒ´çµÈ ÈÄ¿¡ ÃʱⰪÀ» ¼³Á¤ÇÏ´Â°Ô ±âº»ÀÌ°í ±× ¿Ü¿¡µµ °´Ã¼¸¦ »ý¼ºÇϰí ÃʱâÈ­Çϸ鼭 °øÅëÀûÀ¸·Î ÇØ¾ßÇÏ´Â ÀÛ¾÷ÀÌ ÀÖ´Ù¸é »ý¼ºÀÚ¿¡ ¼±¾ðÇØµÑ ¼ö ÀÖ½À´Ï´Ù.
1. º¯¼ö ÇÒ´ç¿¡ ´ëÇÑ ºÎºÐÀº ¼Óµµ¿¡ ´ëÇØ¼­´Â ½Å°æ¾²Áö ¾ÊÀ¸¼Åµµ µÉ°Í °°½À´Ï´Ù. ³×Æ®¿÷ ȤÀº µð½ºÅ©¸¦ »ó´ë·ÎÇÑ IO°¡ ¾Æ´ÑÀÌ»ó ¸Þ¸ð¸®³»ÀÇ ¿¬»êÀº ¹«Ã´À̳ª ºü¸¨´Ï´Ù. »ý¼ºÀÚ·Î º¯¼ö¸¦ ÃʱâÈ­Çϰųª, »ý¼ºÈÄ º°µµÀÇ setter¸¦ ÅëÇØ¼­ °´Ã¼º¯¼ö¸¦ ´ëÀÔÇϰųª, ¿øÇϽô´ë·Î »ç¿ëÇÏ½Ã¸é µÇ´Âµ¥, À§ÀÇ ¿¹Á¦¿¡¼­´Â °´Ã¼º¯¼ö °¹¼ö°¡ Àû¾î¼­ »ý¼ºÀÚ·Î °ªÀ» ¹Þ¾Æ¼­ °´Ã¼º¯¼ö ÇÒ´çÇϼŵµ ¹«¹æÇÏÁö¸¸, °´Ã¼º¯¼ö ÀÚü°¡ ¸¹¾ÆÁö´Â °æ¿ì´Â »ý¼ºÀÚ¸¦ ÅëÇØ Àμö¹Þ´Â ÇüÅ·ΠÃʱâÈ­Çϱ⿡´Â ³ª¿­ÇÏ´Â°Í ÀÚü°¡ ¹«Ã´À̳ª ¹ø°Å·Ó±â ¶§¹®ÀÔ´Ï´Ù. »ý¼ºÀÚ ¾È¿¡¼­ ³Î°ª ¶Ç´Â ºó°ª, 0 µîÀ¸·Î À߸ø È£Ãâ »ç¿ëµÇÁö ¾Ê°Ô °´Ã¼º¯¼ö ÃʱâÈ­¸¸ ÇØÁÖ°í º°µµÀÇ setter·Î Àμö¸¦ Àü´Þ¹Þ¾Æ ÃʱâÈ­ÇÏ´Â ¹æ¹ýµµ ÀÖ½À´Ï´Ù.
2. »ý¼ºÀÚ´Â ¿ø·¡ Á¤Àǰ¡ ¸®ÅÏŸÀÔÀÌ ¾ø½À´Ï´Ù. https://docs.oracle.com/javase/tutorial/java/javaOO/constructors.html
¸Þ¼Òµå¶û ´Ù¸¥Á¡Àº »ý¼ºÀÚ´Â ÀνºÅϽº »ý¼º½Ã¿¡ Çѹø¸¸ ½ÇÇàµÇ°í, °´Ã¼´Â °´Ã¼º¯¼ö+¸Þ¼Òµå·Î ±¸¼ºµÇ´Ï±î °´Ã¼ ÃʱâÈ­¶ó°í Çϴ°ÍÀº °´Ã¼ÀÇ ÀνºÅϽº¸¦ ¸¸µé°í ±× ¾ÈÀÇ °´Ã¼º¯¼ö¸¦ ÃʱâÈ­Çϴ°ÍÀ» ¸»ÇÏ´Â°Í °°³×¿ä. C++¿¡¼­´Â ÃʱâÈ­¸¦ ÇÏÁö ¾ÊÀ¸¸é ÀÌ»óÇÑ ºñÆ®·Î ä¿öÁ®¼­ ³­¸®³ª¼­ ¹Ýµå½Ã ÃʱâÈ­¸¦ ÇØ¾ß Çϴµ¥, ÀÚ¹Ù¿¡¼­´Â °´Ã¼º¯¼ö°¡ ±âº» ÃʱâÈ­°ªÀÌ ÀÖ´ÂÁ¡ÀÌ(boolÀº false, stringÀº null µî) ´Ù¸¨´Ï´Ù.
ĵÀ§µå 2017-10
¼Óµµ´Â ÀÚ¹Ù ÆÛÆ÷¸Õ½º Æ©´×À¸·Î °Ë»öÇϽøé Á¤º¸µç Ã¥ÀÌµç ¸¹ÀÌ ³ª¿É´Ï´Ù.
»ý¼ºÀÚ´Â.. °´Ã¼ »ý¼ºÀ» ó¸®ÇÏ´Â °ÍÀ̹ǷΠ¹ÝȯŸÀÔÀ» ÁöÁ¤ÇÒ ¼ö ¾ø½À´Ï´Ù.
ÀÌÁ¾±Ù 2017-10
´äº¯ ³Ê¹« °¨»çÇÕ´Ï´Ù.
¿À´Ãµµ ¸¹ÀÌ ¹è¿ì°í °©´Ï´Ù.
¹«¾Æ 2017-10
±×°Ô »ý¼ºÀÚÀÇ °æ¿ì »ý¼º ½ÇÆÐ¸¦ Çß´Ù¸é »ý¼ºÀÌ µÇÁö ¾Ê¾ÒÀ¸´Ï±î ¸®ÅÏÇÒ ¹æ¹ýµµ ¾ø°í ±×³É  null ÀÔ´Ï´Ù. »ý¼º ¼º°ø Çß´Ù¸é ±× ÀνºÅϽº°ÚÁÒ.
±×¸®°í ±× ÀνºÅϽº°¡ ³ªÁß¿¡ »ç¿ëµÇ¸é¼­ ¸É¹ö ÇÔ¼ö¿¡ ´ëÇÏ¿© ¸®ÅÏÀÌ Çʿ信 µû¶ó »ç¿ëµÇ°í ¸®ÅÏÀÌ ¾ø´Â ³ðÀ̸é void ÇüÅ·Π¸®ÅÏÀÌ ¾ø´Ù°í ¾Ë·ÁÁÖ´Â °Çµ¥..

¿ìÁÖ°¡ »ý¼ºµÇÁö ¾Ê¾Ò´Âµ¥ º°, ¿Ü°èÀÎ À̾߱⸦ ÇÏ´Â °ÍÀÌ »ý¼ºÀÚ¿¡°Ô ¸®Åϰª ³»³ö¶ó... ÀÎ µí ÇÕ´Ï´Ù.

°¡¸¸.. »ý°¢ ÇØº¸´Ï.. »ý¼ºÀÚÀÇ ¸®ÅϰªÀº void µµ ¾Æ´Ï°í ÀÚ±â ÀڽŠÀÔ´Ï´Ù.
ÀÚ±â ÀÚ½ÅÀ» ¸®ÅÏ ÇüÀ¸·Î ÁöÁ¤ ÇØÁà¾ß Çϴϱî ÀÌ¹Ì »ý¼ºÀÚ´Â ÀÚ½ÅÀÇ ÇüÀ» »ý¼ºÀÚ·Î Àß Ç¥ÇöÇϰíÀÖ´Â Çüų׿ä.


QnA
Á¦¸ñPage 1842/5733
2014-05   5271711   Á¤ÀºÁØ1
2015-12   1796911   ¹é¸Þ°¡
2017-10   3333   Ai20
2017-10   8760   ½ÅÀº¿Ö
2017-10   3963   Win31
2017-10   5350   ¸¶Å°
2017-10   4258   QS¿ÕÅëŰ¼Õ¡¦
2017-10   3904   ´ëÀü±èÇü¿î
2017-10   3544   ÇϴϹٴÏ
2017-10   3795   ¹Ì´ã
2017-10   4103   Àü¼³¼ÓÀǹ̡¦
2017-10   16242   ±è°Ç¿ì
2017-10   11549   ÀϷиӽºÅ©
2017-10   11068   ¸®Ä«¶ó¹Ù
2017-10   5014   ±è°Ç¿ì
2017-10   3372   ±è°Ç¿ì
2017-10   4803   ÀÌõdz
2017-10   5403   Ç㸮¾Æ¾ÆÆÄÆÄ
2017-10   4611   ÇÇ»çü
2017-10   4067   Hieut
2017-10   4159   ¼­¹öÇÏ°ÅÆÄ
2017-10   4090   ½ÅÀº¿Ö