I'm new to Spring and I have a question about how it works.  Why is the interface instantiated in Spring framework and not the class that implements it?  I have seen several tutorials and they all do the same but I can not understand why  The interface:  public interface ILoginServicio {     public String getLogin(String usuario, String contrasena);     public boolean getMultiSearchResult(DirContext dirContext, String searchFilter, String searchBase);     public boolean displayAttribute(String attrName, final Attributes attributes); }   The class implementing the interface:  @Service public class LoginServicioImpl implements ILoginServicio{      @Autowired     private Environment environment;      @Override     public String getLogin(String usuario, String contrasena) {         ....     }      @Override     public boolean getMultiSearchResult(DirContext dirContext, String searchFilter, String searchBase) {         ...         return flagActiveDirectory;     }      @Override     public boolean displayAttribute(String attrName, Attributes attributes) {         ....         return flagActiveDirectory;     } }   Restcontroller class where the bean is injected to:  @RestController public class Login {      @Autowired     ILoginServicio iLoginServicio;      @RequestMapping("/login")     public Respuesta&lt;String&gt; login(@RequestBody UsuarioLogin user){         //.......     } }
I have seen this mentioned a few times and I am not clear on what it means. When and why would you do this?   I know what interfaces do, but the fact I am not clear on this makes me think I am missing out on using them correctly.   Is it just so if you were to do:  IInterface classRef = new ObjectWhatever()   You could use any class that implements IInterface? When would you need to do that? The only thing I can think of is if you have a method and you are unsure of what object will be passed except for it implementing IInterface. I cannot think how often you would need to do that.   Also, how could you write a method that takes in an object that implements an interface? Is that possible?
GNU screen: Running commands in different window when screen is started How can the Anomalous Expansion of Water from 4$^\circ$C to 0$^\circ$C be explained with reference to subatomic particles? How to make a curve path from scratch given a list of (x, y, z) points? Latest NVIDIA driver on Ubuntu 16.04 Elliptic Coordinates - Inverting the transformation The standard way to transform elliptic coordinates $(\mu, \nu)$ $\ to$ Cartesian coordinates $(x,y)$:  $x = a \cosh(\mu) \cos(\nu)$  $y = a \sinh(\mu) \sin(\nu)$  Is there any way to get the transformation $(x,y)$ to $(\mu,\nu)$? Meaning is there a way to find:  $\mu = f(x,y)$  $\nu = g(x,y)$  I'm guessing that it would involve $\sinh^{-1}$'s and $\cosh^{-1}$'s, if it was possible to do this at all. I'm trying to move some data over and to start with I'd like to make sure that the size is ok. I run into a problem however, if I check the folder with   du -sh  myfolder/ 780M    myfolder/   but   du -sh * .. 71M     myfolder ..   I thought it might be something to do with hidden files but this particular folder does not have any inside.  Am I missing something? I've been using Windows 10 for a couple of month now (joined the Insider Preview).  Now my hard drive started ticking so I've bought a new SSD and I want to move the windows installation to the new hard drive, which has been connected to the computer (unpartitioned). I don't mind and I even prefer reinstalling it over again.   Since I have the free version of Windows 10 pro, can I still reinstall it anew? Does the windows 10 installation offer disk management and partition like the older Windows installations used to? How should I reinstall Winodws 10 x64 the easiest but still remain on free mode? Random Forest mtry Spit-to-Split Variable Sampling Procedure How does QGIS Zonal Statistics handle partially overlapping pixels? There are a couple Stackexchange posts asking this question, but neither of them were sufficiently answered:       I am writing Python scripts that perform essentially the same operations as Zonal Stats, and I have been using Zonal Stats to check my scripts' outputs.   I have noticed that when there are many cells in the polygon being queried, my results match perfectly, but there are discrepancies when there are only a few raster cells in the polygon. The following is an example of this. I am computing "count" for each polygon.  Exhibit 1:   The returned count is 0.45, which looks roughly correct if pixels can be treated fractionally rather than simply in/out.  Exhibit 2:   Similar result; count is 0.39.  Exhibit 3:    With a larger poylgon, now we see the count is exactly 2. Note that there are exactly 2 pixel centers contained in the polygon.  Exhibit 4:    Here, only one pixel center is within the polygon. The count is 1.008, though. If you exclude the polygon area from the pixel whose center is in the polygon, the remaining area is obviously greater than 0.008 of a pixel.   From these exhibits, it seems that Zonal Statistics treats these cases specially. It looks like to me that if there are less than 2 pixel centers within the polygon, it performs some kind of averaging such as polygon_area/raster_cell_area to return the count. I should note that I have 48 of these polygons, and all returned counts greater than or equal to 2 are integers; fractional counts are only returned for &lt;2.  How are these fractional-pixel counts incorporated into the other statistics output by Zonal Stats?    indicates strange behavior with max/min when using large raster cells, and my own testing returns mean values not congruous with simple "pixel center in/out of the polygon." To reiterate, I get exact agreement when the underlying raster contains many pixels within the polygon. I couldn't find any documentation about this, and it may be important when people have never had problems with Zonal Stats but use a coarse raster and remain unaware that there is a different behavior when there are only a few pixels within the polygon. Disproving the statement "If $f(z)$ is not an entire function, then $g(z) = f^2(z)$ is not entire.” If $f(z)$ is not an entire function, then $g(z) = (f(z))^2$ cannot be an entire function.”  From this statement why would saying &quot;Let $f(z) = \sqrt z$, assuming that it is a branch that takes $−1$ to $i$. Then it is not analytic on the branch cut, but $g(z) = (f(z))^2 = z$ is obviously an entire function.&quot; Not be a proper example to disprove this statement/ be a incorrect counterexample? I understand that for $\sqrt z$ to be a incorrect counterexample means it is not analytic on the branch -1 to I, therefore not entire. However I thought $\sqrt z$ would be analytic throughout the whole branch cut from -1 to i. Since on the complex plane, $\lim_{z \to -1} \sqrt z$ exists as it would approach $i$ in that case, and in the other case $\lim_{z \to i} \sqrt z$ it approaches $\sqrt i$ meaning that at least on that branch cut in the complex plane it is continuous everywhere, therefore the partial derivatives exist everywhere on the branch cut meaning it is analytic, but this assumption seems to be incorrect. What am I missing or not understanding here. Precisely, I don't understand why $\sqrt z$ would not be a proper counterexample to the statement. How can I draw a graph like the diagram below? I'm trying, but something is wrong with my code in LaTeX: \begin{asy} pair dynkinMark(real x, real y, string s = &quot;&quot;, pen p = defaultpen, pair B = dir(45)) { if (s != &quot;&quot;) { dot(&quot;$&quot;+s+&quot;$&quot;, (x,y), B, p); }     else { dot((x,y), p); }     return (x,y); }  dynkinMark(0,1, &quot;1&quot;, dir(135)); dynkinMark(0,2, &quot;2&quot;, dir(135)); dynkinMark(0,3, &quot;3&quot;, dir(135)); dynkinMark(0,4, &quot;4&quot;, dir(135)); dynkinMark(7,1, &quot;1'&quot;); dynkinMark(7,2, &quot;2'&quot;); dynkinMark(7,3, &quot;3'&quot;); dynkinMark(7,4, &quot;4'&quot;); path p1 = (0,1)..(2,2.0)..(5,3.5)..(7,4); path p2 = (0,2)..(2,1.2)..(5,2.5)..(7,3); path p3 = (0,3)..(2,2.8)..(5,1.5)..(7,1); path p4 = (0,4)..(2,3.8)..(5,3.5)..(7,2); draw(p1, blue); draw(p2, heavycyan); draw(p3, mediumcyan); draw(p4, lightblue); dot(&quot;$12$&quot;, IP(p1, p2), dir(90), heavygreen); dot(&quot;$13$&quot;, IP(p1, p3), dir(90), heavygreen); dot(&quot;$23$&quot;, IP(p2, p3), dir(90), heavygreen); dot(&quot;$14$&quot;, IP(p1, p4), dir(90), heavygreen); dot(&quot;$24$&quot;, IP(p2, p4), dir(90), heavygreen); real y = 0.8; label(&quot;$s_1$&quot;, (IP(p1,p2).x, y), heavygreen); label(&quot;$s_2$&quot;, (IP(p1,p3).x, y), heavygreen); label(&quot;$s_1$&quot;, (IP(p2,p3).x, y), heavygreen); label(&quot;$s_3$&quot;, (IP(p1,p4).x, y), heavygreen); label(&quot;$s_2$&quot;, (IP(p2,p4).x, y), heavygreen); \end{asy} I duplicated a few objects with Alt+D and now I want to apply some modifiers to them, however I can't, because they are multi-user objects.  I tried U > Objects but I still can't apply the modifier.  How to make multi user objects single user? How can metagaming retries on poor skill checks be prevented? Creating Network Flow Diagram using QGIS I have a Telecom cable network in Geopackage format. How do I create a Network flow diagram from which to represent the relationship between Fiber distribution hub to Network access point? Offer a network-wide newsletter Prove that for any square matrix, an invertible matrix B exists, so that BA is triangular I'm given a matrix A, its dimensions are n x n.  I am required to prove that an invertible matrix B exists, such that the product of the matrices BA is triangular.  Any help? Inverse of Heine–Cantor theorem LaTeX Classes or Styles for Schedules and/or Calendars? Maybe TeX isn't the best for this particular problem, but any teachers out there use a particular class or package to plan lessons?  Right now I'm just using a spreadsheet, but I always find myself wishing there was a 'lessonplan.sty' or 'classschedule.sty' file out there somewhere so I could still use the LaTeX for equations, tables, lists etc.    A bit of searching yielded a few results, but there doesn't seem to be a consensus.  Anyone used any of these:        Any recommendations from anyone on best way to make calendar-based class schedules and/or lesson plans? I have defined my own language whose syntax is very close to the one of Pascal. I would like to type the following program for instance. Many people use the packages algorithmicx or algorithm2e to print programs, but it seems that we have to use their specific keywords of its syntax like procedure, end while.  I just want to indent spaces when needed, and bold some words when I want (sorry that I could not bold letters in the following figure). Do I have to use  texttt for each line? Also, with verbatim, I could not bold words...  Also, as the program is not large, I would need to put it on the left side of the page, and leave space for some explanasion text on its right hand side. So I  guss I need to get them all together, and use multicols.  Could anyone help?  program test                                      some text here var   i : integer;                                    ...    b : boolean; begin    i := 1;                                        ...    b := true;    while i &lt; 15 do       i := i  + 1;       b := not b                                  some text here    od end   Edit1: Following @Werner's tabbing solution, I have made the code a minipage:  \begin{minipage}[t]{0.48\linewidth}% \begin{tabbing} Werner's solution \end{tabbing} \end{minipage}\hfill \begin{minipage}[t]{0.48\linewidth} a paragraph \end{minipage}   Actually as the code shows, I want the texts to be another separated minipage on the right hand side of the code. I have then 2 questions:   is it reasonable to make 0.48\linewidth instead of 0.5\linewidth? 0.48\linewidth is a conventional choice? is it possible to make a frame around the code, and use \caption and \label to make it a reference (I prefer figures)? Theoretical proof of the constant of speed of light $c$ in vacuum in all frames of references Is there any theoretical proof for the constant speed of light in all frames of references? I know it is experimentally proven but just curious.